summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dbus/dbus-gproxy.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/dbus/dbus-gproxy.c b/dbus/dbus-gproxy.c
index b379c20..572b7fb 100644
--- a/dbus/dbus-gproxy.c
+++ b/dbus/dbus-gproxy.c
@@ -753,9 +753,16 @@ dbus_g_proxy_manager_replace_name_owner (DBusGProxyManager *manager,
names = g_slist_delete_link (names, link);
- if (names == NULL)
- g_hash_table_remove (manager->owner_names, prev_owner);
- }
+ if (names == NULL)
+ {
+ g_hash_table_remove (manager->owner_names, prev_owner);
+ }
+ else
+ {
+ g_hash_table_insert (manager->owner_names,
+ g_strdup (prev_owner), names);
+ }
+ }
}
if (new_owner[0] == '\0')