[xpcom] Fix signal emission checks to actually iterate through the
authorKalle Vahlman <kalle.vahlman@movial.com>
Tue, 4 Aug 2009 08:15:54 +0000 (11:15 +0300)
committerKalle Vahlman <kalle.vahlman@movial.com>
Tue, 4 Aug 2009 08:15:54 +0000 (11:15 +0300)
whole list instead of aborting on first miss (whoops). Original patch
by Charlie Lenahan.

xpcom-dbusservice/DBusService.cpp

index 9213e8b..51fef8c 100644 (file)
@@ -360,14 +360,14 @@ DBusHandlerResult _signal_filter(DBusConnection *connection,
             if (!t.IsEmpty() && !t.Equals(dbus_message_get_sender(message)))
             {
                 BDBLOG(("    sender does not match\n"));
-                break;
+                continue;
             }
             signal->GetObjectPath(t);
             BDBLOG(("    object    : %s\n", PromiseFlatCString(t).get()));
             if (!t.IsEmpty() && !t.Equals(dbus_message_get_path(message)))
             {
                 BDBLOG(("    objectPath does not match\n"));
-                break;
+                continue;
             }
 
             /* do callback */