aboutsummaryrefslogtreecommitdiffstats
path: root/packages/e17/illume/gsm-segfault.patch
blob: f7bf87a9f1502f3608da5aa0450aeaa7b264f7c1 (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: src/e_mod_gad_gsm.c
===================================================================
--- src/e_mod_gad_gsm.c	(revision 37564)
+++ src/e_mod_gad_gsm.c	(working copy)
@@ -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);
 }