שאפו ענק לגווידו גונתר , מספר שעות אחרי דיווח באג שהתראות מסוג CB הפסיקו לעבוד , הוא שיחרר שני תיקונים שוגרמים לזה לחזור לעבוד.
הבאג היה שפתאום המערכת אצלנו הוסיפה פאדינג של 00, מה ששבר את הפיענוח הקיים.
מה שקרה שההתראה הראשונה בשבת הופיעה, אולם ההתראות האחרות אחריה והתראות השחרור לא הופיעו על המסך ב phosh.
הפוסט הזה קשור לאנשים שמשתמשים ב modemmanager ו phosh , כלומר מכשירי האורן (pinephone) ו חמישיה חופשית (librem5).
על מנת לקבל את ה צריך למשוך את הפאטצ' הזה על מנהל המודם.
גם למשוך את השינויים של פוש .
על מנת לקבל את השינויים בphosh מספיק לבצע apt-get source phosh וגם clone ל #123 ואז להפעיל dpkg-buildpackage -us -uc בשביל לבנות את החבילה. כאשר בונים את החבילה יכול להית שהקומפיילר יתעופף (כמו שהיה אצלי) , לא לחשוש ולנסות שוב , זה כנראה משהוא שקשור לעבודה שאני בניתי את זה ישירות על הטלפון.
על מנת להתאים את הפאטצ' במנהל המודם צריך להשתמש ב quilt ולבצע מספר שינויים מקומיים.
פאטצ' הquilt החלקי שלי מול דביאן יציב היה :
cat mm-cbm-part-convert
Description: partial apply of https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1432/diffs?commit_id=3745ab3b296293908bc4000f893485edec03be7d
This is a partial apply to unblock CB by using guido's code from https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1432/diffs?commit_id=3745ab3b296293908bc4000f893485edec03be7d
Author: Guido Gunter
Origin: upstream, https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1432/diffs?commit_id=3745ab3b296293908bc4000f893485edec03be7d
Reviewed-by: Boris Shtrasman <user@example.com>
Last-Update: 2026-03-04
---
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
--- a/src/mm-cbm-part.c
+++ b/src/mm-cbm-part.c
@@ -190,9 +190,24 @@
log_object,
error);
if (!text) {
+ int i;
+ for (i = len; i > 0; i--) {
+ text = mm_sms_decode_text (&pdu[offset],
+ i,
+ cbm_part->encoding,
+ 0,
+ log_object,
+ NULL);
+ if (text) {
+ break;
+ }
+ }
+ }
+ if (!text) {
mm_cbm_part_free (cbm_part);
return NULL;
}
+ g_clear_error (error);
cbm_part->text = g_steal_pointer (&text);
return cbm_part;
הבדל חשוב שאני לא משתמש ניהול הזכרון החכם שגוידו השתמש בו, מכיוון שרציתי לבצע את המינמום השינוים שיש ,כפי שרואים אני גם לא הוספתי את קוד הבדיקות (כי התעצלתי). הוספתי גם מקטע ב chanelog ויצרתי תת גרסה חדשה 1.24.0-1+deb13u2 חשוב תמיד לדאוג לשים תת גרסה "עדכנית" יותר, אבל גם לזכור שכשיהיה גירסה חדשה לדאוג לבצע התקנה בכוח (כי אם מישהוא אחר ייצר בדיוק את הגרסה הזאת כברירת מחדל זה לא יותקן).
לאחר שנשמר ה changelog והquilt אפשר לבנות את החבילה שוב פעם עם buildpackage -us -uc.
כאשר אנחנו צריכים לשנות חבילות דביאן אנחנו משתמשים ב quilt https://wiki.debian.org/UsingQuilt , אבל כאשר משנים את ה changelog בדר"כ רק משנים את זה ב git. אבל מכיוון שפה זה על המחשב לשי בלבד לא הייתי צריך לשמור את השינויי הנוסף ב git.
עכשיו צריך שאיזה שהוא מפתח דביאן יאשר ויחבר את השינויים של פוש, ויעשה backport כמו שאני עשיתי למנהל המודם.
לי לא ברור האם דביאן ישארו תיקון באג כזה, אבל אני חושב שזה מאוד חשוב שזה ייצא בדחיפות.
נ.ב.
אני חושב שראיתי אנגלית, ערבית, רוסית(?) ועברית בהתראה על פוש, אם קיימות שפות נוספת אני פספסתי.
כאשר המסך נעול ב 0.46 , אז הודעת ה CB מוצגת בחצי מסך , וצריך למשוך אותה מעלה בשביל לקרוא את כל ההודעה.
ההודעה הראשונה בשבת , הופיעה ללא בעייה, עם התיקונים הללו גם הודעת השחרור וגם הודעת האזהרה מופיעות כמו שצריך.


