segv on exit from certain uimanager program



I get a segv from the program below when using the mouse to select
File/Quit.  This is on a recent debian i386 with gtk-perl 1.161, perl
5.8.8, gtk 2.12.1 and glib 2.14.3.

Sticking it under gdb shows it deep under gtk_ui_manager_finalize, with
"signal_emit_unlocked_R" apparently having got a bad "emission_list",
presumably on the destroy signal of some object within that uimanager.
But beyond that it's a mystery to me.

I struck this in my own program using a uimanager.  There seems to be
number of ways to avoid the problem,

    * use the keyboad to choose File/Quit (instead of the mouse)
    * Gtk2->main_quit instead of "exit 0"
    * don't hold the uimanager in $toplevel->{'ui'}
    * don't have an empty toolbar section in the ui spec

So maybe it's something subtle.  Very possibly it's unrelated to perl as
such -- I suppose in a C program nobody bothers to destroy objects when
exiting so who knows if their cleanups work!

Attachment: foo.pl
Description: Text Data



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]