This is not a bug. The API does not publicly expose the constructor, i. e. Xkl.Engine.new() does not exist. Xkl.Engine() invokes the GObject constructor on it, which we cannot hide unfortunately.
The API documentation [1] shows that you need to use the singleton function Xkl.Engine.get_instance(display) for this. This works fine, the upstream code has a test script for all this, which you might steal from [2]. [1] http://xlibs.freedesktop.org/xkbdesc/doc/libxklavier-xkl-engine.html#xkl-engine-get-instance [2] http://cgit.freedesktop.org/libxklavier/tree/tests/test_gi.py ** Changed in: libxklavier (Ubuntu Precise) Status: In Progress => Triaged ** Package changed: libxklavier (Ubuntu Precise) => ubiquity (Ubuntu Precise) ** Changed in: ubiquity (Ubuntu Precise) Assignee: Martin Pitt (pitti) => Stéphane Graber (stgraber) ** Summary changed: - python2.7 crashed with SIGSEGV in g_object_newv() when using gi binding for xklavier (gir1.2-xkl-1.0) + Calls Xkl.Engine() gobject constructor which is invalid; needs to use Xkl.Engine.get_instance -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/950087 Title: Calls Xkl.Engine() gobject constructor which is invalid; needs to use Xkl.Engine.get_instance To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/ubiquity/+bug/950087/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs