diff options
author | Mike Blumenkrantz <zmike@samsung.com> | 2014-05-08 16:57:26 -0400 |
---|---|---|
committer | Mike Blumenkrantz <zmike@samsung.com> | 2014-05-08 17:00:15 -0400 |
commit | 4675323286b7bf636efac0e50d2377d549e979fa (patch) | |
tree | 3278f15645e9fabbe2b688919a9eda375c607dac | |
parent | 43ed52443103e2577b26a5d360c392bcaafb969e (diff) | |
download | enlightenment-4675323286b7bf636efac0e50d2377d549e979fa.tar.gz |
bugfix: appindicator service name parsing now stringshares correctly
fix T811
-rw-r--r-- | src/modules/systray/e_mod_notifier_host_dbus.c | 17 |
1 files changed, 7 insertions, 10 deletions
diff --git a/src/modules/systray/e_mod_notifier_host_dbus.c b/src/modules/systray/e_mod_notifier_host_dbus.c index 17fba756b9..f5de1997df 100644 --- a/src/modules/systray/e_mod_notifier_host_dbus.c +++ b/src/modules/systray/e_mod_notifier_host_dbus.c @@ -22,16 +22,13 @@ typedef struct _Notifier_Host_Data { static Eina_Bool service_string_parse(const char *item, const char **path, const char **bus_id) { - unsigned i; - for (i = 0; i < strlen(item); i++) - { - if (item[i] != '/') - continue; - *path = eina_stringshare_add(item+i); - *bus_id = eina_stringshare_nprintf(i+1, "%s", item); - return EINA_TRUE; - } - return EINA_FALSE; + const char *p; + + p = strchr(item, '/'); + if (!p) return EINA_FALSE; + *path = eina_stringshare_add(p); + *bus_id = eina_stringshare_add_length(item, p - item); + return EINA_TRUE; } static Notifier_Item * |