diff options
-rw-r--r-- | bus/connection.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/bus/connection.c b/bus/connection.c index 53605fa3..b3583433 100644 --- a/bus/connection.c +++ b/bus/connection.c @@ -537,9 +537,6 @@ bus_connections_unref (BusConnections *connections) _dbus_assert (connections->n_incomplete == 0); - /* drop all monitors */ - _dbus_list_clear (&connections->monitors); - /* drop all real connections */ while (connections->completed != NULL) { @@ -555,6 +552,10 @@ bus_connections_unref (BusConnections *connections) _dbus_assert (connections->n_completed == 0); + /* disconnecting all the connections should have emptied the list of + * monitors (each link is removed in bus_connection_disconnected) */ + _dbus_assert (connections->monitors == NULL); + bus_expire_list_free (connections->pending_replies); _dbus_loop_remove_timeout (bus_context_get_loop (connections->context), |