[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: gEDA-user: gschem 1.4.0 crashing while editing symbol attributes



On Sun, 2008-08-24 at 16:45 +0100, Peter Clifton wrote:
> On Sat, 2008-08-23 at 12:49 +0100, Peter Clifton wrote:
> > On Sat, 2008-08-23 at 13:39 +0200, Christoph Lechner wrote:
> > 
> > > 
> > > Just found out that it's even easier to crash it.
> > > 
> > > Just place a resistor, delete the contents of the value field in the
> > > "Edit Attributes" window (just as above). Then with the text field still
> > > having the focus click some other window on the screen (for exampe a
> > > shell window)
> > 
> > Yep ;)
> > 
> > I checked the validator on resistor too.
> 
> Ok, my analysis was wrong - the validator is working, that was a bug in
> the git HEAD branch. I see the Gtk-Warning too on my box, but in
> versions prior to GTK2.10, this is followed by an assertion which aborts
> the program. I'll see if we can avoid tripping over it.

This could be rather complex to fix.

The problem is that we run the validation dialog box from the focus-out
event of the cell renderer. That spins a mainloop, and the timeout which
blinks the caeret in the renderer gets called. (Which is where the
assertion failure is - the box has lost focus, and it is checking to see
that the focus-out handler was appropriately called, and the timeout
removed).

I "vote" for changing behaviour to match the GtkEntry as used in the
"name" column. Observe there, if you're editing and loose focus, all
edits are dropped on the floor. Doing this means we can skip the
validation step, and we don't ever try opening a dialog whilst the
editor widget is in the middle of loosing focus.


-- 
Peter Clifton

Electrical Engineering Division,
Engineering Department,
University of Cambridge,
9, JJ Thomson Avenue,
Cambridge
CB3 0FA

Tel: +44 (0)7729 980173 - (No signal in the lab!)



_______________________________________________
geda-user mailing list
geda-user@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user