After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 119913 - crash using VTE through libglade
crash using VTE through libglade
Status: RESOLVED FIXED
Product: vte
Classification: Core
Component: general
0.11.x
Other Linux
: High critical
: ---
Assigned To: VTE Maintainers
Nalin Dahyabhai
Depends on:
Blocks:
 
 
Reported: 2003-08-14 22:05 UTC by Jon Willeke
Modified: 2005-06-11 21:02 UTC
See Also:
GNOME target: ---
GNOME version: 2.9/2.10


Attachments
GDB backtrace (2.87 KB, text/plain)
2003-08-14 22:08 UTC, Jon Willeke
  Details
Proposed patch (3.57 KB, patch)
2004-11-25 14:54 UTC, padraig.obriain
none Details | Review
Python testcase (929 bytes, text/x-python)
2005-06-10 15:07 UTC, Michele Baldessari
  Details
Glade file needed for the python test (2.23 KB, application/x-glade)
2005-06-10 15:07 UTC, Michele Baldessari
  Details

Description Jon Willeke 2003-08-14 22:05:14 UTC
I'm using GLADE 2.0.0, libglade 2.0.1, GTK+ 2.2.1, ATK 1.2.2, PyGTK
1.99.17, and VTE 0.11.10 from CVS.

I have a GLADE project that includes a VTE widget as a custom widget.  This
works fine with 0.10.25, 0.10.29, and 0.11.10.  I built VTE from CVS to
test some recent additions, but it crashes during initialization with a
segmentation fault.  Does the latest VTE require a newer version of GTK+ or
ATK?

I'm attaching a GDB backtrace for debug versions of VTE and ATK.  Here's
the suspicious part:

(gdb) up
  • #1 vte_terminal_initialize
    at vteaccess.c line 743
$1 = (void (*)(AtkObject *, gpointer)) 0
Comment 1 Jon Willeke 2003-08-14 22:08:23 UTC
Created attachment 19227 [details]
GDB backtrace
Comment 2 Jon Willeke 2003-08-15 16:32:14 UTC
I neglected to mention that a critical assertion appears on stderr
shortly before the segmentation fault:

** (customgnome:1173): CRITICAL **: file vte.c: line 9225
(vte_terminal_get_text): assertion `VTE_IS_TERMINAL(terminal)' failed

Upgrading to ATK 1.2.4 had no effect.
Comment 3 Nalin Dahyabhai 2003-09-15 19:08:10 UTC
Are you building with --enable-debugging?  If not, does reverting
vteaccess.c to 1.42 affect anything?
Comment 4 Jon Willeke 2003-10-03 17:16:12 UTC
I got the segfault after rebuilding from CVS today.  It works fine
after reverting vteaccess.c to 1.42.

Building with --enable-debugging yields an additional message with
both versions:

WARNING **: Accessibility (AtkNoOpObject) is not derived from
GtkAccessible (GTK_MODULES=gail not set?), deriving from GtkAccessible
instead.

I'm using GAIL 1.2.0, as shipped with SuSE Linux 8.2.  I may try
upgrading to 1.2.2.
Comment 5 padraig.obriain 2004-11-25 14:54:55 UTC
Created attachment 34125 [details] [review]
Proposed patch
Comment 6 Michele Baldessari 2005-06-10 15:07:04 UTC
Created attachment 47553 [details]
Python testcase

Brief python program to test the Padraig's patch
Comment 7 Michele Baldessari 2005-06-10 15:07:44 UTC
Created attachment 47554 [details]
Glade file needed for the python test

Needed glade file
Comment 8 Michele Baldessari 2005-06-10 15:09:20 UTC
Padraig's patch fixes the crash for me. 

Jon, could you confirm ti fixes it for you too?

Comment 9 Michele Baldessari 2005-06-11 20:33:16 UTC
This patch also fixes the segfault in ./reflect-vte, which is much simpler to
reproduce
Comment 10 Kjartan Maraas 2005-06-11 21:02:29 UTC
Since this patch is from the a11y exptertise and has been tested etc I'll just
stick it in CVS.