Aw: Re: New panel in trunk

Brian J. Tarricone bjt23 at cornell.edu
Thu Oct 13 22:02:52 CEST 2005


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 10/13/2005 5:06 AM, Fabian Nowak wrote:

> Program received signal SIGSEGV, Segmentation fault.
> [Switching to Thread -1217968448 (LWP 3634)]
> 0xb7987cf3 in g_type_check_instance_cast ()
> from /usr/lib/libgobject-2.0.so.0
> (gdb) bt
> #0  0xb7987cf3 in g_type_check_instance_cast ()
>    from /usr/lib/libgobject-2.0.so.0
> #1  0xb74487c6 in icon_menu_deactivated (menu=0x8300f40, ld=0x4c0a)
>     at launcher-dialog.c:279
> #2  0xb79796ab in g_cclosure_marshal_VOID__VOID ()
>    from /usr/lib/libgobject-2.0.so.0
> #3  0xb796d67b in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
> #4  0xb797cc9d in g_signal_stop_emission ()
> from /usr/lib/libgobject-2.0.so.0
[snip]

Jasper,

I may be totally wrong, as I haven't looked at the code in question, but
I remember dealing with some annoying quasi-races where if you call
gtk_widget_destroy() on the menu itself in the 'deactivate' signal
handler, you actually destroy the menu items before the MI's 'activate'
signal handler runs, and then Bad Things Happen.  I don't recall if
using g_signal_connect_after(... "deactivate" ...) works ok, or if you
need to put the menu destruction in an idle handler called from the
'deactivate' handler.  Either way, it's really bad design on GTK's part
(in the practical sense, anyway).  Plus I think sometimes it works OK
either way, which really confuses the hell out of me.  Lame.

Anyway, not sure if this is the situation here, but I thought I'd chime
in to save you some time if it is.

	-brian

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (MingW32)

iD8DBQFDTr1r6XyW6VEeAnsRAlznAKDYX0xBJ00/irxJXPhmiEl7UtVvBACgtYpe
zPpax5hki3VP6bDK6ZZ+0ZQ=
=ppnJ
-----END PGP SIGNATURE-----



More information about the Xfce4-dev mailing list