diff options
author | lukefromdc <[email protected]> | 2017-08-20 17:35:56 -0400 |
---|---|---|
committer | raveit65 <[email protected]> | 2017-11-07 21:33:53 +0100 |
commit | 418679a91ff711170754ce4d6ed9105e3ae6449b (patch) | |
tree | 91ae81ad532efdcc553678e3674c3001bddf9f15 /applets/fish | |
parent | b6b89c1e796801d2cbb694a0e4963e4248ac79df (diff) | |
download | mate-panel-418679a91ff711170754ce4d6ed9105e3ae6449b.tar.bz2 mate-panel-418679a91ff711170754ce4d6ed9105e3ae6449b.tar.xz |
Fix crashes on moving/removing applets with glib 2.53.4 or later
*On destroying applet disconnect signals for functions that otherwise segfaults with glib 2.53.4 or later.
*Fish: it's not always enough for a function to return immediately if applet destroyed anymore
*panel-action-button: suppress a warning
Diffstat (limited to 'applets/fish')
-rw-r--r-- | applets/fish/fish.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/applets/fish/fish.c b/applets/fish/fish.c index a9387b88..82d56f22 100644 --- a/applets/fish/fish.c +++ b/applets/fish/fish.c @@ -1757,6 +1757,10 @@ static void fish_applet_dispose (GObject *object) { FishApplet* fish = (FishApplet*) object; + if (fish->settings != NULL) + g_signal_handlers_disconnect_by_data (fish->settings, + fish); + if (fish->timeout) { g_source_remove (fish->timeout); |