[Bug 457731]

Jwelsh 457731 at bugs.launchpad.net
Sat Feb 1 16:38:28 UTC 2014


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 Kubuntu
Bugs, 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




More information about the kubuntu-bugs mailing list