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 567666 - AboutDialog and LinkButton uri and email callback exception traps
AboutDialog and LinkButton uri and email callback exception traps
Status: RESOLVED OBSOLETE
Product: gnome-perl
Classification: Bindings
Component: Gtk2
unspecified
Other Linux
: Normal normal
: ---
Assigned To: gtk2-perl-bugs
gtk2-perl-bugs
Depends on: 568460
Blocks:
 
 
Reported: 2009-01-13 22:06 UTC by Kevin Ryde
Modified: 2021-07-05 12:22 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
LinkButton exception sample program (652 bytes, text/plain)
2009-01-13 22:08 UTC, Kevin Ryde
Details
AboutDialog error trap sample (826 bytes, text/plain)
2009-01-13 22:09 UTC, Kevin Ryde
Details

Description Kevin Ryde 2009-01-13 22:06:23 UTC
The uri_hook/url_hook and email_hook of Gtk2::LinkButton and Gtk2::AboutDialog could helpfully trap errors through the Glib->install_exception_handler mechanism.  Each is basically a user button press, much like a Gtk2::Button 'clicked' signal, and almost certainly shouldn't terminate the whole program.  Sample programs attached for the three places it arises.
Comment 1 Kevin Ryde 2009-01-13 22:08:01 UTC
Created attachment 126383 [details]
LinkButton exception sample program
Comment 2 Kevin Ryde 2009-01-13 22:09:51 UTC
Created attachment 126384 [details]
AboutDialog error trap sample

Click under "Credits" for the email hook which dies as well as the url hook.
Comment 3 Kevin Ryde 2009-01-15 21:51:34 UTC
muppet points out an original motivation for trapping in signal handlers was that it's not possible to jump out of a main loop from a signal handler without leaving glib in a terrible state.  I think that may apply to these AboutButton and LinkButton callbacks, ie. that they're run out of signal handlers.

LinkButton runs the uri hook out of its class handler for the "clicked" signal.  AboutButton runs its url hook out of a signal connected on the "activate" signal of a button widget (a LinkButton as it happens).  The AboutButton email hook runs from somewhere deep in TextView "follow" business, though presumably it usually gets there from either a button_press_event or key_press_event handler somewhere far up the chain.
Comment 4 GNOME Infrastructure Team 2021-07-05 12:22:10 UTC
GNOME is going to shut down bugzilla.gnome.org in favor of gitlab.gnome.org.
As part of that, we are mass-closing older open tickets in bugzilla.gnome.org
which have not seen updates for a longer time (resources are unfortunately
quite limited so not every ticket can get handled).

If you can still reproduce the situation described in this ticket in a recent
and supported software version, then please follow
  https://wiki.gnome.org/GettingInTouch/BugReportingGuidelines
and create a new ticket at
  https://gitlab.gnome.org/GNOME?utf8=%E2%9C%93&filter=perl-

Thank you for your understanding and your help.