Bug 82322
Summary: | libgnomeui-2.1.90 segfaults when reading .glade files | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | [Retired] Red Hat Public Beta | Reporter: | Panu Matilainen <pmatilai> | ||||||
Component: | pygtk2 | Assignee: | Matt Wilson <msw> | ||||||
Status: | CLOSED NOTABUG | QA Contact: | |||||||
Severity: | medium | Docs Contact: | |||||||
Priority: | medium | ||||||||
Version: | phoebe | ||||||||
Target Milestone: | --- | ||||||||
Target Release: | --- | ||||||||
Hardware: | i386 | ||||||||
OS: | Linux | ||||||||
Whiteboard: | |||||||||
Fixed In Version: | Doc Type: | Bug Fix | |||||||
Doc Text: | Story Points: | --- | |||||||
Clone Of: | Environment: | ||||||||
Last Closed: | 2003-02-16 19:05:55 UTC | Type: | --- | ||||||
Regression: | --- | Mount Type: | --- | ||||||
Documentation: | --- | CRM: | |||||||
Verified Versions: | Category: | --- | |||||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||
Cloudforms Team: | --- | Target Upstream Version: | |||||||
Embargoed: | |||||||||
Bug Depends On: | |||||||||
Bug Blocks: | 79579 | ||||||||
Attachments: |
|
Created attachment 89455 [details]
.glade file to reproduce the problem
A further datapoint: I just realized that I have a third "application" (really minimal) which was originally created on RHL8.0 beta (null2 I think) which breaks the same exact way on phoebe2 so it doesn't seem to be related to converting from Glade1 to 2. Created attachment 89966 [details]
Minimal glade file to reproduce the problem.
This is actually reproducable on current rawhide really easily:
1) start up glade-2
2) create new project, doesn't matter if it's gtk or gnome project
3) add a gnome application window
4) save the project and try to load the glade file from python
-> segfault.
You can actually delete the button bar, menu & the base vbox and it still
segfaults and still downgrading (rpm -Uvh --nodeps --oldpackage
libgnomeui-2.1.2-1.i386.rpm from phoebe1) fixes it.
in order to use any GNOME classes, you must import the gnome module and initialize it: import gtk.glade import gnome import gnome.ui gnome.program_init("myprogram", "0.1") xml = gtk.glade.XML('minimal.glade') Doh.. so it was my bad afterall, I just was caught by surprise to see a previously working bits break between betas :) Thank you for the tip!! |
From Bugzilla Helper: User-Agent: Mozilla/5.0 Galeon/1.2.7 (X11; Linux i686; U;) Gecko/20021216 Description of problem: I have two custom python/gnome applications which break on upgrade from phoebe1 to phoebe2 and tracked the problem down to libgnomeui - if I force downgrade to phoebe1 libgnomeui both applications start working again and if I upgrade it back to 2.1.90-* it starts segfaulting when trying to read the <application>.glade file. Maybe there's something strange in the glade-files (I just have no idea what to look for) but I don't think it should segfault anyway... Version-Release number of selected component (if applicable): >= 2.1.90-1 How reproducible: Always Steps to Reproduce: Using the attached sohofw.glade file.. [pmatilai@es-adsl-soho-30-186 sohofw]$ python Python 2.2.2 (#1, Jan 15 2003, 01:45:57) [GCC 3.2.1 20021207 (Red Hat Linux 8.0 3.2.1-2)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import gtk, gtk.glade >>> xml = gtk.glade.XML('sohofw.glade') Actual Results: (:12337): GLib-GObject-CRITICAL **: file gobject.c: line 1002 (g_object_get): assertion `G_IS_OBJECT (object)' failed (:12337): GLib-GObject-CRITICAL **: file gobject.c: line 1002 (g_object_get): assertion `G_IS_OBJECT (object)' failed Segmentation fault Expected Results: With libgnomeui-2.1.2-1.i386.rpm installed it loads as expected. Additional info: Both applications were originally created with glade-1 (on RH7.2 I think) and then ported to RH8.0/Gnome 2.0 (glade files converted with glade-2's conversion tool). Here's a backtrace of the crash: #0 0x42072da1 in free () from /lib/tls/libc.so.6 (gdb) bt #0 0x42072da1 in free () from /lib/tls/libc.so.6 #1 0x40345084 in g_free () from /usr/lib/libglib-2.0.so.0 #2 0x409824f0 in _init () from /usr/lib/libglade/2.0/libgnome.so #3 0x4099aff1 in glade_xml_build_widget () from /usr/lib/libglade-2.0.so.0 #4 0x40999d36 in glade_xml_build_interface () from /usr/lib/libglade-2.0.so.0 #5 0x40997fe3 in glade_xml_construct () from /usr/lib/libglade-2.0.so.0 #6 0x40997f3b in glade_xml_new () from /usr/lib/libglade-2.0.so.0 #7 0x402e65e1 in _wrap_glade_xml_new () from /usr/lib/python2.2/site-packages/gtk-2.0/gtk/glademodule.so #8 0x08060808 in PyTuple_Fini () #9 0x080b35b7 in PyObject_Call () #10 0x0807c525 in PyEval_GetFuncDesc () #11 0x0807a145 in PyEval_EvalCode () #12 0x0807acee in PyEval_EvalCodeEx () #13 0x08077be5 in PyEval_EvalCode () #14 0x08097a89 in PyRun_FileExFlags () #15 0x08096655 in PyRun_InteractiveOneFlags () #16 0x080963f6 in PyRun_InteractiveLoopFlags () #17 0x080962f7 in PyRun_AnyFileExFlags () #18 0x08053a19 in Py_Main () #19 0x08053469 in main () #20 0x420154a0 in __libc_start_main () from /lib/tls/libc.so.6 (gdb)