[pulseaudio-commits] src/modules

Arun Raghavan arun at kemper.freedesktop.org
Thu Sep 22 10:49:27 PDT 2011


 src/modules/dbus/module-dbus-protocol.c |    8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

New commits:
commit 165bd13d9e596b98ebc9cd8f9927d606934ff709
Author: David Henningsson <david.henningsson at canonical.com>
Date:   Thu Sep 22 13:57:56 2011 +0200

    dbus: Don't crash if the module does not load
    
    If module-dbus-protocol fails to start, pa__done is still called,
    which falsified the assumption that u->connections was always set.
    
    BugLink: http://bugs.launchpad.net/bugs/855729
    Signed-off-by: David Henningsson <david.henningsson at canonical.com>

diff --git a/src/modules/dbus/module-dbus-protocol.c b/src/modules/dbus/module-dbus-protocol.c
index ae9df20..c24e1e0 100644
--- a/src/modules/dbus/module-dbus-protocol.c
+++ b/src/modules/dbus/module-dbus-protocol.c
@@ -594,10 +594,12 @@ void pa__done(pa_module *m) {
     if (u->core_iface)
         pa_dbusiface_core_free(u->core_iface);
 
-    while ((c = pa_idxset_steal_first(u->connections, NULL)))
-        connection_free(c);
+    if (u->connections) {
+        while ((c = pa_idxset_steal_first(u->connections, NULL)))
+            connection_free(c);
 
-    pa_idxset_free(u->connections, NULL, NULL);
+        pa_idxset_free(u->connections, NULL, NULL);
+    }
 
     /* This must not be called before the connections are freed, because if
      * there are any connections left, they will emit the



More information about the pulseaudio-commits mailing list