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 168945 - Segfault inside buildwindowtree()
Segfault inside buildwindowtree()
Status: RESOLVED OBSOLETE
Product: dasher
Classification: Applications
Component: gtk
3.2.x
Other Linux
: Normal normal
: ---
Assigned To: Phil Cowans
Phil Cowans
: 170401 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2005-03-02 04:15 UTC by Leonardo Boshell
Modified: 2006-01-27 19:35 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
dasher-3.2.13-buildwindowtree.patch (694 bytes, patch)
2005-03-02 04:16 UTC, Leonardo Boshell
none Details | Review
dasher-3.2.15-buildwindowtree.patch (499 bytes, patch)
2005-03-10 22:26 UTC, Leonardo Boshell
none Details | Review

Description Leonardo Boshell 2005-03-02 04:15:13 UTC
Version details: 3.2.13

Hello. I'm using dasher 3.2.13, and there seems to be a bug inside
buildwindowtree() (Src/Gtk2/accessibility.cc) that causes a segmentation fault
on my system.

Right after the for loop, this line comes up:

  tmptree->parent->next = NULL;

Apparently the assumption was that the loop always runs at least once, so
nothing bad happens, but, at least for me, that's not the case and dereferencing
tmptree->parent->next crashes the application.
Comment 1 Leonardo Boshell 2005-03-02 04:16:35 UTC
Created attachment 38132 [details] [review]
dasher-3.2.13-buildwindowtree.patch

Simple workaround. However, I'm not sure this is the right fix. Let me know if
you want to know anything else about my system.

Thanks.
Comment 2 Leonardo Boshell 2005-03-10 22:26:11 UTC
Created attachment 38532 [details] [review]
dasher-3.2.15-buildwindowtree.patch

Apparently there was an attempt to fix this:
http://cvs.gnome.org/viewcvs/dasher/Src/Gtk2/accessibility.cc?r1=1.25&r2=1.26

However, with dasher-3.2.15 (which includes that CVS fix) it's still crashing
for me. This is the updated patch I made to fix this in dasher-3.2.15.
Comment 3 Chris Ball 2005-03-14 23:31:54 UTC
*** Bug 170401 has been marked as a duplicate of this bug. ***
Comment 4 Matthew Garrett 2005-03-15 00:27:22 UTC
Cock. Got it. Line 253 of main.cc, drop the #ifdef #endif pair.

I'm not too keen on depending on libwnck, but it provides useful functionality
and there's no other way of getting it. Best plan may be to work around it based
on the library version.
Comment 5 Loïc Minier 2005-09-03 15:22:02 UTC
Is this commited?
Comment 6 Loïc Minier 2005-09-06 20:22:50 UTC
You seem to have found the fix, is it committed?  There are no ifdef at this
point currently, but there are a lot around...
Comment 7 Chris Ball 2005-09-06 23:04:27 UTC
Yes, this is committed.
Comment 8 Phil Cowans 2006-01-27 19:35:15 UTC
This code has now been removed, pending a rewrite in a future release (probably 4.2), as the function wasn't generally working well anyway.