GNOME Bugzilla – Bug 319536
assertion error in key accel group code
Last modified: 2005-10-30 13:51:44 UTC
Traceback below: elin:/opt/gnome/src/epiphany > gdb epiphany GNU gdb 6.3-debian Copyright 2004 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i386-linux"...Using host libthread_db library "/lib/tls/libthread_db.so.1". (gdb) run --g-fatal-warnings Starting program: /opt/gnome/bin/epiphany --g-fatal-warnings [Thread debugging using libthread_db enabled] [New Thread -1228634432 (LWP 22078)] [New Thread -1242932304 (LWP 22081)] Gtk-CRITICAL **: gtk_accel_label_set_accel_closure: assertion `gtk_accel_group_from_accel_closure (accel_closure) != NULL' failed aborting... Program received signal SIGABRT, Aborted. [Switching to Thread -1228634432 (LWP 22078)] 0xb6cc3a27 in raise () from /lib/tls/libc.so.6 (gdb) thread apply all bt
+ Trace 63670
Thread 1 (Thread -1228634432 (LWP 22078))
Oh, this is CVS HEAD btw.
Created attachment 54067 [details] [review] Sets accel group for actions. Normally done by UI manager, but not in our case. Turns out the bug was in egg-editable-toolbar. In the normal case, actions on the toolbar are also present in the menus. The menus are managed by a GtkUIManager that sets the accel group correctly for each action. If an action does not exist in the menus (for example, the bookmark menus are generated on-demand, and extensions may add actions which aren't in the menus) then GtkUIManager may not have set the accel group yet. This causes an error when the overflow menu for the toolbar is generated. This patch corrects that by setting the accel group everytime an item is created from the action.
Thanks for the patch! Fixed in cvs.