← Back to team overview

edubuntu-bugs team mailing list archive

[Bug 457731]

 

Created attachment 84935
Proposed patch: cancel construction before quit

I can confirm Christoph's patch works as described, but I don't think
it's a good user experience. You try to quit the program, and the button
responds but it doesn't quit. There's no indication that the construct
mode has to be canceled first.

Here's an update of the patch that escapes the nested event loop before
quitting by canceling the construction. It's definitely an abuse of
queryClose(), and I don't understand the Kig code well enough to
guarantee it will always work. In particular, is it possible for there
to be more than two levels of nested event loops, i.e. some other mode
invoked from within a construct mode? Still, it does solve this
particular crash, and makes the program behave as the user expects.

I don't see another way to do it, short of getting rid of the event loop
nesting altogether, which seems to be the root of the problem. Although,
a halfway but reliable alternative would be to cancel the construction
but return false from KigPart::queryClose(). That is, the first time you
try to quit, it just cancels the mode; the second time it really quits.

-- 
You received this bug notification because you are a member of Edubuntu
Bugsquad, which is subscribed to kdeedu in Ubuntu.
https://bugs.launchpad.net/bugs/457731

Title:
  kig crashed with SIGSEGV in QAction::setEnabled()

To manage notifications about this bug go to:
https://bugs.launchpad.net/kdeedu/+bug/457731/+subscriptions