← Back to team overview

geda-developers team mailing list archive

Re: [geda-user] gschem segfault

 

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