summaryrefslogtreecommitdiff
path: root/gtk/gtkprinteroptionwidget.c
diff options
context:
space:
mode:
authorAlban Browaeys <prahal@yahoo.com>2013-03-21 09:45:32 +0100
committerMatthias Clasen <mclasen@redhat.com>2013-04-14 20:20:14 -0400
commitad764c8a58579c6f0427c3584b00530a32001303 (patch)
tree9df2c0e598a3c5f433bdf80cd874095c6462df33 /gtk/gtkprinteroptionwidget.c
parentefaacea1d2b8064aa7ba9cc7bbfa3bb84964e004 (diff)
downloadgtk+-ad764c8a58579c6f0427c3584b00530a32001303.tar.gz
print: disconnect source_changed_handler on printeroptionwidget finalize
Printing a web page without window.print (which still segfault), that is Ctrl+P is fixed (does not attempt to execute the source_changed_handler on a printeroptionwidget that has been destroyed) by disconnecting this handler in the printeroptionwidget finalize. https://bugzilla.gnome.org/show_bug.cgi?id=696622
Diffstat (limited to 'gtk/gtkprinteroptionwidget.c')
-rw-r--r--gtk/gtkprinteroptionwidget.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/gtk/gtkprinteroptionwidget.c b/gtk/gtkprinteroptionwidget.c
index 44c54adf7c..36b8c9d0a3 100644
--- a/gtk/gtkprinteroptionwidget.c
+++ b/gtk/gtkprinteroptionwidget.c
@@ -152,6 +152,8 @@ gtk_printer_option_widget_finalize (GObject *object)
if (priv->source)
{
+ g_signal_handler_disconnect (priv->source,
+ priv->source_changed_handler);
g_object_unref (priv->source);
priv->source = NULL;
}