summaryrefslogtreecommitdiff
path: root/plugins/screensaver-proxy
diff options
context:
space:
mode:
authorBastien Nocera <hadess@hadess.net>2013-09-03 04:38:51 +0200
committerBastien Nocera <hadess@hadess.net>2013-09-03 04:45:21 +0200
commit7dc0b24883ae0b97b14e63b6d681abc9581ed432 (patch)
tree08edfb8310fbdde44a838c88af2b342f1f74bd65 /plugins/screensaver-proxy
parentfd0e2b107cdf5e82a034fc9a30753259ecc3d267 (diff)
downloadgnome-settings-daemon-7dc0b24883ae0b97b14e63b6d681abc9581ed432.tar.gz
screensaver-proxy: Fix crash when client vanishes
We were using the "sender" variable, which was gathered from the hash table, instead of using directly the argument passed to the function. As the sender variable was freed pretty much straight after it was removed from the cookies hashtable, we were accessing freed memory, usually leading to a crash. Reported in: https://trac.videolan.org/vlc/ticket/4739#comment:46
Diffstat (limited to 'plugins/screensaver-proxy')
-rw-r--r--plugins/screensaver-proxy/gsd-screensaver-proxy-manager.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/plugins/screensaver-proxy/gsd-screensaver-proxy-manager.c b/plugins/screensaver-proxy/gsd-screensaver-proxy-manager.c
index 9f36b63c..02648093 100644
--- a/plugins/screensaver-proxy/gsd-screensaver-proxy-manager.c
+++ b/plugins/screensaver-proxy/gsd-screensaver-proxy-manager.c
@@ -179,7 +179,7 @@ name_vanished_cb (GDBusConnection *connection,
}
}
- g_hash_table_remove (manager->priv->watch_ht, sender);
+ g_hash_table_remove (manager->priv->watch_ht, name);
}
static void