GNOME Bugzilla – Bug 741291
gobject pointer gets converted into integer in the bindings
Last modified: 2018-01-10 20:48:28 UTC
One of GEGL python bindings tests that passes just fine on 3.12.0 and 3.12.2 fails on 3.14.0 version of gi and debugging indcates that a pointer to a gobject returned by a function gets turned into integer, ruining it for further use. Here is the debugging code in git that shows the problem: https://git.gnome.org/browse/gegl/tree/tests/python/test-gegl-format.py?h=debugging-jenkins-tests#n52 And here is the build log at the end of witch is the fail along with the debug output. https://build.gimp.org/job/gegl-master-build-debuging/7/console
Created attachment 292386 [details] Build log from the build bot Adding the build log in case it gets removed from the build server.
I'm having a bit of trouble debugging this due to the gegl build failing with introspection enabled building with jhbuild. jhbuild config: ... moduleset = "gnome-world-3.14" module_autogenargs['gegl'] = '--enable-introspection' ... This pulls in the gegl branch "gegl-0-2". I then get errors when building: gegl/tmp-introspectq9Mh6z/Gegl-0.2.c:61:7: error: stray ‘\’ in program g_critical ("failed to write to iochannel: %s", error->message); Any ideas?
Afair only master has introspection support. jhbuildrc: branches = {"gegl": "master"}
Indeed, the test in question is only relevant for master.
I attempted to build Gegl master and hit the following problems when building with introspection: ...gegl/gegl/tmp-introspectY8Erbl/Gegl-0.3.o:(.data+0x8): undefined reference to `gegl_access_mode_get_type' ...gegl/tmp-introspectY8Erbl/Gegl-0.3.o:(.data+0x10): undefined reference to `gegl_orientation_get_type' any other pointers for building this?
Created attachment 304882 [details] test-case With pygobject3-base from fedora 22 (3.16.1), GEGL make check fails because the workaround (Skip the test for gi.__version__ == 3.14) is no longer sufficient. So trying to help I ran git bisect which ends at: https://git.gnome.org/browse/pygobject/commit/?id=b0236d6fde137e0b2ecf7f5556ad5d53c22874bc After checking out that tree, building and installing it the attached test case prints: <type 'int'> <type 'int'> whereas after checking out, building and installing the parent tree (HEAD^) the test case prints: <type 'NoneType'> <type 'gobject.GPointer'>
-- GitLab Migration Automatic Message -- This bug has been migrated to GNOME's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.gnome.org/GNOME/pygobject/issues/93.