[gtk+/gtk-3-14] popover: Remove signal handlers in dispose



commit e0fe93062e50691d1caab0b361af4e855032981b
Author: Matthias Clasen <mclasen redhat com>
Date:   Wed Apr 8 20:20:38 2015 -0400

    popover: Remove signal handlers in dispose
    
    If we don't, they may get triggered at an inopportune
    time later, causing us to crash.
    
    See
    https://bugzilla.redhat.com/show_bug.cgi?id=1203499
    
    https://bugzilla.gnome.org/show_bug.cgi?id=747539

 gtk/gtkpopover.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)
---
diff --git a/gtk/gtkpopover.c b/gtk/gtkpopover.c
index 65e1b05..3da8cc7 100644
--- a/gtk/gtkpopover.c
+++ b/gtk/gtkpopover.c
@@ -243,7 +243,10 @@ gtk_popover_dispose (GObject *object)
   gtk_widget_set_visible (GTK_WIDGET (object), FALSE);
 
   if (priv->window)
-    _gtk_window_remove_popover (priv->window, GTK_WIDGET (object));
+    {
+      g_signal_handlers_disconnect_by_data (priv->window, popover);
+      _gtk_window_remove_popover (priv->window, GTK_WIDGET (object));
+    }
 
   priv->window = NULL;
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]