Re: Glib 1.102 (stable)
- From: muppet <scott asofyet org>
- To: Sean Dague <sean dague net>
- Cc: gtk-perl mailing list <gtk-perl-list gnome org>
- Subject: Re: Glib 1.102 (stable)
- Date: Thu, 15 Dec 2005 10:24:53 -0500
On Dec 15, 2005, at 8:53 AM, Sean Dague wrote:
On Mon, Nov 28, 2005 at 09:49:31PM +0100, Torsten Schoenfeld wrote:
On Mon, 2005-11-28 at 21:48 +0100, Torsten Schoenfeld wrote:
http://sourceforge.net/project/showfiles.php?
group_id=64773&package_id=160888&release_id=353295
This should read
http://sourceforge.net/project/showfiles.php?
group_id=64773&package_id=91217&release_id=374366
of course.
I'm getting a lot of users of perl-Glib 1.102 reporting segfaults
(1.101
works fine for them.) The following is the backtrace I've managed
to gather
from one of the users:
This looks like you have a perl-derived CellRenderer in your code.
In frame #5, gtk_tree_view_column_cell_set_cell_data() is calling
g_object_set_property() on something, most likely using an attribute
set up when the TreeViewColumn was created.
The first red flag is the value of property_name in frame #4 -- is
that a garbage string or a unicode string? I believe that most of
the code assumes property names will be ASCII. This questionable
value appears to have been mapped to a decent property id for the
call to gperl_type_set_property(), which is in the vtable for perl-
derived GObjects. When gperl_type_set_property() discovers there is
no SET_PROPERTY() in the package and no sub registered as a set
handler, it falls back to setting a key in the wrapper hash with the
same name as the property. However, as you see in the trace, the
name in frame #2 does not match the property_name in frame #4.
This could be one of two things --- an invalid property name in the
attribute setup for your treeview, or memory corruption.
Have you been able to reproduce the crash with a subset of your
code? At this point, code will be the most helpful thing you can
provide.
#0 0x7f480514 in S_hv_fetch_flags ()
#1 0x7f480438 in Perl_hv_fetch ()
#2 0x004180b8 in _gperl_fetch_wrapper_key (object=0x1800200,
name=0x1bb92c0 "\001ºz\210", create=1) at GObject.xs:772
#3 0x00410ef4 in gperl_type_set_property (object=0x3bdf880,
property_id=28857897, value=0xbfffcf30, pspec=0x1af7e50) at
GType.xs:1512
#4 0x0060d004 in g_object_set_property (object=0x3bdf880,
property_name=0x2976290 "\002\227X\220", value=0xbfffcfb0) at
gobject.c:691
#5 0x04014e8c in gtk_tree_view_column_cell_set_cell_data
(tree_column=0x3bdf530, tree_model=0xbfffcfb0, iter=0x19569c8,
is_expander=1, is_expanded=1) at gtktreeviewcolumn.c:2547
#6 0x04001358 in validate_row (tree_view=0x3bdedf0, tree=0x3be2c50,
node=0x1b9d818, iter=0xbfffd0e0, path=0x0) at gtktreeview.c:4665
#7 0x040024f0 in do_validate_rows (tree_view=0x3bdedf0,
queue_resize=0) at
gtktreeview.c:5225
#8 0x03ffc090 in gtk_tree_view_size_request (widget=0x1b9d818,
requisition=0x3be2c50) at gtktreeview.c:1806
--
To me, "hajime" means "the man standing opposite you is about to hit
you with a stick".
-- Ian Malpass, speaking of the Japanese word for "the beginning"
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]