chiark / gitweb /
dbus: make sure dbus doesn't call us anymore when we unref'ed it
[elogind.git] / dbus.c
diff --git a/dbus.c b/dbus.c
index ab32b9f81f89937a6b590112c79ae4bb20e2a9cf..5d914e94b973d94aa14f9ad7fbd97ac2bb61fc7f 100644 (file)
--- a/dbus.c
+++ b/dbus.c
@@ -614,6 +614,7 @@ void bus_done_api(Manager *m) {
                         m->system_bus = NULL;
 
                 dbus_connection_close(m->api_bus);
+                dbus_connection_set_dispatch_status_function(m->api_bus, NULL, NULL, NULL);
                 dbus_connection_unref(m->api_bus);
                 m->api_bus = NULL;
 
@@ -638,6 +639,7 @@ void bus_done_system(Manager *m) {
 
         if (m->system_bus) {
                 dbus_connection_close(m->system_bus);
+                dbus_connection_set_dispatch_status_function(m->system_bus, NULL, NULL, NULL);
                 dbus_connection_unref(m->system_bus);
                 m->system_bus = NULL;
         }