better organization for unmarshaling image hints, also reduce number of potential...
authordiscomfitor <discomfitor@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Fri, 18 Nov 2011 20:40:50 +0000 (20:40 +0000)
committerdiscomfitor <discomfitor@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Fri, 18 Nov 2011 20:40:50 +0000 (20:40 +0000)
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/e_dbus@65391 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

src/lib/notification/marshal.c

index 3c5fb23..6ddd83b 100644 (file)
@@ -507,10 +507,19 @@ e_notify_unmarshal_notify_hints(E_Notification *n, DBusMessageIter *iter)
                   dbus_message_iter_get_basic(&variant, &s_val);
                   e_notification_hint_desktop_set(n, s_val);
                }
-             else if ((!strcmp(key, "image_path")) || (!strcmp(key, "image-path")))
+             else if ((!strncmp(key, "image", 5)))
                {
-                  dbus_message_iter_get_basic(&variant, &s_val);
-                  e_notification_hint_image_path_set(n, s_val);
+                  if ((key[5] != '-') && (key[5] != '_')) continue;
+                  if (!strcmp(key + 6, "path"))
+                    {
+                       dbus_message_iter_get_basic(&variant, &s_val);
+                       e_notification_hint_image_path_set(n, s_val);
+                    }
+                  else if (!strcmp(key + 6, "data"))
+                    {
+                       dbus_message_iter_recurse(&dict, &variant);
+                       n->hints.image_data = e_notify_unmarshal_hint_image(&variant);
+                    }
                }
              else if (!strcmp(key, "sound-file"))
                {
@@ -542,11 +551,6 @@ e_notify_unmarshal_notify_hints(E_Notification *n, DBusMessageIter *iter)
                   dbus_message_iter_get_basic(&variant, &y);
                   y_set = 1;
                }
-             else if ((!strcmp(key, "image_data")) || (!strcmp(key, "image-data")))
-               {
-                  dbus_message_iter_recurse(&dict, &variant);
-                  n->hints.image_data = e_notify_unmarshal_hint_image(&variant);
-               }
              else if (!strcmp(key, "icon_data"))
                {
                   dbus_message_iter_recurse(&dict, &variant);