diff options
author | Bastien Nocera <hadess@hadess.net> | 2013-09-03 04:38:51 +0200 |
---|---|---|
committer | Bastien Nocera <hadess@hadess.net> | 2013-09-03 04:45:21 +0200 |
commit | 7dc0b24883ae0b97b14e63b6d681abc9581ed432 (patch) | |
tree | 08edfb8310fbdde44a838c88af2b342f1f74bd65 /plugins/screensaver-proxy | |
parent | fd0e2b107cdf5e82a034fc9a30753259ecc3d267 (diff) | |
download | gnome-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.c | 2 |
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 |