geda-developers team mailing list archive
-
geda-developers team
-
Mailing list archive
-
Message #00090
Re: [geda-user] gschem segfault
-
To:
geda-developers@xxxxxxxxxxxxxxxxxxx
-
From:
Peter TB Brett <peter@xxxxxxxxxxxxx>
-
Date:
Sun, 18 Nov 2012 14:39:45 +0000
-
In-reply-to:
<20120203233617.GA7583@localdomain>
-
Organization:
Surrey Space Centre
-
User-agent:
KMail/4.9.3 (Linux/3.6.6-1.fc17.x86_64; KDE/4.9.3; x86_64; ; )
On Saturday 04 February 2012 00:36:17 Krzysztof Kościuszkiewicz wrote:
> Re-sending to geda-devel to solicit comments...
>
> Dnia 2012-01-30 o godzinie 01:00 Krzysztof Kościuszkiewicz napisał(a):
> > Dnia 2012-01-30 o godzinie 01:58 Vladimir Zhbanov napisał(a):
> > > I've found gschem bug in git head. gschem segfaults when I close
> > > two
> > > windows with unsaved pages.
> >
> > ...
> >
> > > After bisecting I've got the following result:
> > >
> > > 8342bddce4487edf4a7214d5d6ab83cb73a066d4 is the first bad commit
> >
> > Thanks for the report and for finding the bad commit! Long story
> > short - the commit adds a "new toplevel" hook with hardcoded
> > w_current pointing to the first gschem window.
> >
> > When next window is created, hooks will still run with "old"
> > w_current - it's a miracle this blows up only when gschem exits and
> > frees the original w_current - but hooks for the subsequent windows
> > still try to access it.
>
> A patch for review is attached. Ideas for better name/place for
> gschem_toplevel_alloc_libgeda_toplevel() are welcome...
It's not the most elegant thing ever, but I think it'll do.
The bigger problem is that there are two different code paths for
creating and initialising a gschem window. That *does* need to be fixed,
but post-1.8.0, I think
Peter
--
Peter Brett <peter@xxxxxxxxxxxxx>
Remote Sensing Research Group
Surrey Space Centre
Attachment:
signature.asc
Description: This is a digitally signed message part.
References