summaryrefslogtreecommitdiff
path: root/recipes/e17/e-wm/gsm-segfault-fix.patch
blob: 0bed84a26e2cee2abbc92b30f549bed5ab73e435 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Index: e/src/modules/illume/e_mod_gad_gsm.c
===================================================================
--- e/src/modules/illume/e_mod_gad_gsm.c	(revision 37617)
+++ e/src/modules/illume/e_mod_gad_gsm.c	(revision 37618)
@@ -353,7 +353,7 @@
 {
    /* We care only about the provider name right now. All the other status
     * informations get ingnored for the gadget for now */
-   const char *provider, *name, *reg_stat;
+   const char *provider = 0 , *name = 0, *reg_stat = 0;
    DBusMessageIter iter, a_iter, s_iter, v_iter;
    
    if (!dbus_message_has_signature(msg, "a{sv}")) return NULL;
@@ -380,10 +380,13 @@
 	dbus_message_iter_next(&a_iter);
      }
    
+   if (!reg_stat) return NULL;
    if (strcmp(reg_stat, "unregistered") == 0) provider = "No Service";
    else if (strcmp(reg_stat, "busy") == 0) provider = "Searching...";
    else if (strcmp(reg_stat, "denied") == 0) provider = "SOS only";
-   
+
+   if (!provider) return NULL;
+
    return strdup(provider);
 }