After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 696622 - gtk option printer widget segfault in epiphany
gtk option printer widget segfault in epiphany
Status: RESOLVED FIXED
Product: gtk+
Classification: Platform
Component: Printing
3.8.x
Other Linux
: Normal normal
: ---
Assigned To: gtk-bugs
gtk-bugs
Depends on:
Blocks:
 
 
Reported: 2013-03-26 10:07 UTC by Alban Browaeys
Modified: 2013-04-15 00:19 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
disconnect source_changed_handler on printeroptionwidget finalize (1.07 KB, patch)
2013-03-26 10:07 UTC, Alban Browaeys
needs-work Details | Review
disconnect source_changed_handler on printeroptionwidget finalize (v2) (1.01 KB, patch)
2013-04-14 21:10 UTC, Alban Browaeys
none Details | Review

Description Alban Browaeys 2013-03-26 10:07:39 UTC
Created attachment 239852 [details] [review]
 disconnect source_changed_handler on printeroptionwidget finalize

disconnect source_changed_handler on printeroptionwidget finalize

Printing a web page without window.print (which still segfault but is a matter of webkitgtk bugs
already reported against 1.11.92),
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.


Program received signal SIGSEGV, Segmentation fault.
0x00007ffff2e1bd79 in update_widgets (widget=0x18ee2e0) at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkprinteroptionwidget.c:943
943	  source = priv->source;
(gdb) bt
  • #0 update_widgets
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkprinteroptionwidget.c line 943
  • #1 source_changed_cb
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkprinteroptionwidget.c line 238
  • #2 g_cclosure_marshal_VOID__VOIDv
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gmarshal.c line 115
  • #3 _g_closure_invoke_va
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gclosure.c line 840
  • #4 g_signal_emit_valist
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3234
  • #5 g_signal_emit
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3384
  • #6 emit_changed
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkprinteroption.c line 165
  • #7 gtk_printer_option_set
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkprinteroption.c line 199
  • #8 gtk_printer_option_set_property
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkprinteroption.c line 135
  • #9 object_set_property
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gobject.c line 1358
  • #10 g_object_set_property
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gobject.c line 2155
  • #11 on_source_notify
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gbinding.c line 379
  • #12 g_cclosure_marshal_VOID__PARAM
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gmarshal.c line 1042
  • #13 g_closure_invoke
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gclosure.c line 777
  • #14 signal_emit_unlocked_R
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3584
  • #15 g_signal_emit_valist
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3328
  • #16 g_signal_emit
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3384
  • #17 g_object_dispatch_properties_changed
  • #18 g_object_notify_by_spec_internal
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gobject.c line 1136
  • #19 g_object_notify
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gobject.c line 1178
  • #20 colord_update_ui_from_settings
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/modules/printbackends/cups/gtkprintercups.c line 274
  • #21 colord_client_device_connect_cb
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/modules/printbackends/cups/gtkprintercups.c line 425
  • #22 g_simple_async_result_complete
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gio/gsimpleasyncresult.c line 777
  • #23 complete_in_idle_cb
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gio/gsimpleasyncresult.c line 789
  • #24 g_idle_dispatch
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/glib/gmain.c line 5205
  • #25 g_main_dispatch
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/glib/gmain.c line 3054
  • #26 g_main_context_dispatch
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/glib/gmain.c line 3630
  • #27 g_main_context_iterate
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/glib/gmain.c line 3701
  • #28 g_main_context_iteration
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/glib/gmain.c line 3762
  • #29 g_application_run
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gio/gapplication.c line 1623
  • #30 main
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/epiphany/src/ephy-main.c line 487
  • #0 g_object_unref
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gobject.c line 3016
  • #1 g_object_run_dispose
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gobject.c line 1064
  • #2 gtk_widget_destroy
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkwidget.c line 4093
  • #3 gtk_grid_forall
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkgrid.c line 502
  • #4 gtk_container_foreach
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkcontainer.c line 2074
  • #5 gtk_container_destroy
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkcontainer.c line 1377
  • #6 g_cclosure_marshal_VOID__VOID
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gmarshal.c line 85
  • #7 g_type_class_meta_marshal
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gclosure.c line 970
  • #8 g_closure_invoke
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gclosure.c line 777
  • #9 signal_emit_unlocked_R
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3700
  • #10 g_signal_emit_valist
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3328
  • #11 g_signal_emit
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3384
  • #12 gtk_widget_dispose
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkwidget.c line 10771
  • #13 g_object_run_dispose
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gobject.c line 1062
  • #14 gtk_widget_destroy
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkwidget.c line 4093
  • #15 gtk_box_forall
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkbox.c line 1865
  • #16 gtk_container_foreach
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkcontainer.c line 2074
  • #17 gtk_container_destroy
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkcontainer.c line 1377
  • #18 g_cclosure_marshal_VOID__VOID
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gmarshal.c line 85
  • #19 g_type_class_meta_marshal
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gclosure.c line 970
  • #20 g_closure_invoke
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gclosure.c line 777
  • #21 signal_emit_unlocked_R
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3700
  • #22 g_signal_emit_valist
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3328
  • #23 g_signal_emit
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3384
  • #24 gtk_widget_dispose
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkwidget.c line 10771
  • #25 g_object_run_dispose
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gobject.c line 1062
  • #26 gtk_widget_destroy
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkwidget.c line 4093
  • #27 gtk_box_forall
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkbox.c line 1865
  • #28 gtk_container_foreach
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkcontainer.c line 2074
  • #29 gtk_container_destroy
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkcontainer.c line 1377
  • #30 g_cclosure_marshal_VOID__VOID
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gmarshal.c line 85
  • #31 g_type_class_meta_marshal
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gclosure.c line 970
  • #32 g_closure_invoke
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gclosure.c line 777
  • #33 signal_emit_unlocked_R
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3700
  • #34 g_signal_emit_valist
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3328
  • #35 g_signal_emit
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3384
  • #36 gtk_widget_dispose
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkwidget.c line 10771
  • #37 g_object_run_dispose
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gobject.c line 1062
  • #38 gtk_widget_destroy
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkwidget.c line 4093
  • #39 gtk_box_forall
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkbox.c line 1865
  • #40 gtk_container_foreach
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkcontainer.c line 2074
  • #41 gtk_container_destroy
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkcontainer.c line 1377
  • #42 g_cclosure_marshal_VOID__VOID
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gmarshal.c line 85
  • #43 g_type_class_meta_marshal
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gclosure.c line 970
  • #44 g_closure_invoke
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gclosure.c line 777
  • #45 signal_emit_unlocked_R
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3700
  • #46 g_signal_emit_valist
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3328
  • #47 g_signal_emit
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3384
  • #48 gtk_widget_dispose
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkwidget.c line 10771
  • #49 g_object_run_dispose
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gobject.c line 1062
  • #50 gtk_widget_destroy
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkwidget.c line 4093
  • #51 gtk_notebook_forall
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtknotebook.c line 4498
  • #52 gtk_container_foreach
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkcontainer.c line 2074
  • #53 gtk_container_destroy
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkcontainer.c line 1377
  • #54 gtk_notebook_destroy
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtknotebook.c line 1719
  • #55 g_cclosure_marshal_VOID__VOID
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gmarshal.c line 85
  • #56 g_type_class_meta_marshal
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gclosure.c line 970
  • #57 g_closure_invoke
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gclosure.c line 777
  • #58 signal_emit_unlocked_R
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3700
  • #59 g_signal_emit_valist
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3328
  • #60 g_signal_emit
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3384
  • #61 gtk_widget_dispose
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkwidget.c line 10771
  • #62 g_object_run_dispose
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gobject.c line 1062
  • #63 gtk_widget_destroy
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkwidget.c line 4093
  • #64 gtk_box_forall
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkbox.c line 1865
  • #65 gtk_container_foreach
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkcontainer.c line 2074
  • #66 gtk_container_destroy
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkcontainer.c line 1377
  • #67 g_cclosure_marshal_VOID__VOID
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gmarshal.c line 85
  • #68 g_type_class_meta_marshal
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gclosure.c line 970
  • #69 g_closure_invoke
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gclosure.c line 777
  • #70 signal_emit_unlocked_R
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3700
  • #71 g_signal_emit_valist
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3328
  • #72 g_signal_emit
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3384
  • #73 gtk_widget_dispose
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkwidget.c line 10771
  • #74 g_object_run_dispose
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gobject.c line 1062
  • #75 gtk_widget_destroy
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkwidget.c line 4093
  • #76 gtk_box_forall
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkbox.c line 1865
  • #77 gtk_container_foreach
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkcontainer.c line 2074
  • #78 gtk_container_destroy
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkcontainer.c line 1377
  • #79 g_cclosure_marshal_VOID__VOID
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gmarshal.c line 85
  • #80 g_type_class_meta_marshal
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gclosure.c line 970
  • #81 g_closure_invoke
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gclosure.c line 777
  • #82 signal_emit_unlocked_R
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3700
  • #83 g_signal_emit_valist
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3328
  • #84 g_signal_emit
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3384
  • #85 gtk_widget_dispose
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkwidget.c line 10771
  • #86 g_object_run_dispose
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gobject.c line 1062
  • #87 gtk_widget_destroy
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkwidget.c line 4093
  • #88 gtk_bin_forall
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkbin.c line 180
  • #89 gtk_container_foreach
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkcontainer.c line 2074
  • #90 gtk_container_destroy
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkcontainer.c line 1377
  • #91 gtk_window_destroy
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkwindow.c line 4702
  • #92 g_cclosure_marshal_VOID__VOID
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gmarshal.c line 85
  • #93 g_type_class_meta_marshal
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gclosure.c line 970
  • #94 g_closure_invoke
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gclosure.c line 777
  • #95 signal_emit_unlocked_R
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3700
  • #96 g_signal_emit_valist
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3328
  • #97 g_signal_emit
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3384
  • #98 gtk_widget_dispose
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkwidget.c line 10771
  • #99 gtk_window_dispose
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkwindow.c line 2401
  • #100 g_object_run_dispose
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gobject.c line 1062
  • #101 gtk_widget_destroy
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkwidget.c line 4093
  • #102 webkitPrintOperationRunDialogForFrame(_WebKitPrintOperation*, _GtkWindow*, WebKit::WebFrameProxy*)
    from /opt/gnome/lib64/libwebkit2gtk-3.0.so.22
  • #103 ephy_web_view_print
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/epiphany/embed/ephy-web-view.c line 3632
  • #104 window_cmd_file_print
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/epiphany/src/window-commands.c line 81
  • #105 g_cclosure_marshal_VOID__VOID
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gmarshal.c line 85
  • #106 g_closure_invoke
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gclosure.c line 777
  • #107 signal_emit_unlocked_R
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3584
  • #108 g_signal_emit_valist
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3328
  • #109 g_signal_emit
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3384
  • #110 _gtk_action_emit_activate
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkaction.c line 801
  • #111 closure_accel_activate
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkaction.c line 1638
  • #112 g_closure_invoke
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gclosure.c line 777
  • #113 signal_emit_unlocked_R
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3584
  • #114 g_signal_emit_valist
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3338
  • #115 g_signal_emit
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3384
  • #116 gtk_accel_group_activate
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkaccelgroup.c line 914
  • #117 gtk_accel_groups_activate
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkaccelgroup.c line 952
  • #118 gtk_window_activate_key
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkwindow.c line 9400
  • #119 gtk_window_key_press_event
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkwindow.c line 6035
  • #120 ephy_window_key_press_event
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/epiphany/src/ephy-window.c line 941
  • #121 _gtk_marshal_BOOLEAN__BOXEDv
    at gtkmarshalers.c line 130
  • #122 g_type_class_meta_marshalv
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gclosure.c line 997
  • #123 _g_closure_invoke_va
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gclosure.c line 840
  • #124 g_signal_emit_valist
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3234
  • #125 g_signal_emit
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gobject/gsignal.c line 3384
  • #126 gtk_widget_event_internal
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkwidget.c line 6714
  • #127 gtk_widget_event
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkwidget.c line 6371
  • #128 propagate_event
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkmain.c line 2490
  • #129 gtk_propagate_event
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkmain.c line 2536
  • #130 gtk_main_do_event
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gtk/gtkmain.c line 1716
  • #131 _gdk_event_emit
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gdk/gdkevents.c line 69
  • #132 gdk_event_source_dispatch
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/gtk+/gdk/x11/gdkeventsource.c line 364
  • #133 g_main_dispatch
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/glib/gmain.c line 3054
  • #134 g_main_context_dispatch
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/glib/gmain.c line 3630
  • #135 g_main_context_iterate
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/glib/gmain.c line 3701
  • #136 g_main_context_iteration
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/glib/gmain.c line 3762
  • #137 g_application_run
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/glib/gio/gapplication.c line 1623
  • #138 main
    at /home/prahal/Projects/Devel/Gnome/jhbuild/gnome/epiphany/src/ephy-main.c line 487

Comment 1 Matthias Clasen 2013-03-31 05:03:18 UTC
Review of attachment 239852 [details] [review]:

Looks right in principle, though

::: gtk/gtkprinteroptionwidget.c
@@ +157,3 @@
+        g_signal_handler_disconnect (priv->source,
+				   priv->source_changed_handler);
+      }

I don't think there's any need to check priv->source_changed_handler here - it is always set when priv->source is not NULL.
Comment 2 Matthias Clasen 2013-03-31 05:03:25 UTC
Review of attachment 239852 [details] [review]:

Looks right in principle, though

::: gtk/gtkprinteroptionwidget.c
@@ +157,3 @@
+        g_signal_handler_disconnect (priv->source,
+				   priv->source_changed_handler);
+      }

I don't think there's any need to check priv->source_changed_handler here - it is always set when priv->source is not NULL.
Comment 3 Alban Browaeys 2013-04-14 21:10:08 UTC
Created attachment 241530 [details] [review]
disconnect source_changed_handler on printeroptionwidget finalize (v2)