Re: Faling to wrap object in signal handler



2012-03-04 20:54, Kjell Ahlstedt skrev:
It's possible that the wrap_init() function, generated by generate_wrap_init.pl, does not correctly register Clutter::Box2D::Box2DCollision_Class::wrap_new(). Possible reasons:

1. generate_wrap_init.pl has not been told to read the .hg file where Clutter::Box2D::Box2DCollision is defined.

2. No _GMMPROC_EXTRA_NAMESPACE(Box2D) in the .hg file.
generate_wrap_init.pl ignores namespace declarations. It gets the name of the main namespace (Clutter in your case) from a command argument. If there are sub-namespaces (Box2D in your case) they must be given in a _GMMPROC_EXTRA_NAMESPACE macro that generate_wrap_init.pl does read. See the Gio::DBus files, e.g.
http://git.gnome.org/browse/glibmm/tree/gio/src/dbusconnection.hg

Oops, I see now in http://git.gnome.org/browse/clutter-box2dmm/tree/clutter-box2d/src/Makefile.am that both namespaces Clutter and Box2D are given to generate_wrap_init.pl in command-line parameters: wrap_init_flags = --namespace=Clutter --namespace=Box2D --parent_dir=clutter-box2dmm
Then you shall not use _GMMPROC_EXTRA_NAMESPACE.
3. Both Clutter::Box2D::Box2DCollision and Clutter::Box2DCollision exist (or Clutter::xxx::Box2DCollision where xxx is any namespace name other than Box2D), and you use a version of generate_wrap_init.pl where bug 640029 has not been fixed. It was fixed very recently, 2012-02-28 in git.

Kjell



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