On Wed, Jan 11, 2012 at 14:47, <jcup...@gmail.com> wrote: > Hi all, > > I'm adding gobject-introspection support to my library. It's working > well for the GObject classes, but I just can't get it to work for > GBoxed objects. I'm sure I'm missing something obvious. Do I need to > write an override to make a class for the type myself? > > I've spent some time googling and grepping around and not found a > simple example. Again, I'm probably being stupid. > > I'm doing something like this in a header: > > /** > * VIPS_TYPE_BLOB: > * > * The %GType for a #VipsBlob. > */ > #define VIPS_TYPE_BLOB (vips_blob_get_type()) > GType vips_blob_get_type( void ); > typedef ... VipsBlob; > VipsBlob *vips_blob_new( int n ); > > and this in the .c file: > > GType > vips_blob_get_type( void ) > { > static GType type = 0; > > if( !type ) > type = g_boxed_type_register_static( "VipsBlob", > (GBoxedCopyFunc) ..., > (GBoxedFreeFunc) ... ); > > return( type ); > } > > /** > * vips_blob_new: > * @n: > * > * Returns: (transfer full): the new #VipsBlob. > */ > VipsBlob * > vips_blob_new( int n ) > { > return (...a new VipsBlob); > } > > Now when I start up Python I get this: > >>>> from gi.repository import Vips >>>> Vips.blob_new > <function blob_new at 0x7ffff7e31de8> >>>> Vips.blob_new(12) > > Program received signal SIGSEGV, Segmentation fault. > _args_cache_generate (callable_cache=0x9b04c0, callable_info=0xa6d280) > at /build/buildd/pygobject-3.0.0/gi/pygi-cache.c:1282 > > This is on current Ubuntu, so: > > $ pkg-config gobject-introspection-1.0 --modversion > 1.30.0
Looks like a bug in pygobject, could you file a bug with a backtrace? It may be worth trying out with the latest release to scope better the problem. Thanks, Tomeu > John > _______________________________________________ > gtk-devel-list mailing list > gtk-devel-list@gnome.org > http://mail.gnome.org/mailman/listinfo/gtk-devel-list _______________________________________________ gtk-devel-list mailing list gtk-devel-list@gnome.org http://mail.gnome.org/mailman/listinfo/gtk-devel-list