PR #815 ignores ctrl-C during normal code execution, this restores the sigint handler outside the inputhook.
Don't ignore ctrl-C during normal execution in inputhook_qt4
shorten qt4 ctrl-C message to one line
@cboos, just wanted to ping you on this one: we merged it after review on IRC and a fair amount of testing. We realize it may bring back some problem case you might know about and that we couldn't find, so please let us know if that's the case. But the complete breakage of C-C in master was bad enough that we had to do something to fix it; we're happy to fine-tune further if you know of other edge cases this causes problems with.
Thanks for the CC. The changes look good and a0e0692 was indeed a mistake from my part, the correct behavior should indeed be that CTRL+C is allowed outside of the inputhook (I probably did this silly mistake in an "afterthought", wanting to make it symmetric with the ignore_CTRL_C in the catch block, forgetting that the mgr.clear_inputhook() done just a bit later would reenable the CTRL_C). Your finally clause makes the intent clearer.
That mgr.clear_inputhook() will re-enable the CTRL+C, so any KeyboardInterrupt received in the few lines until the function exit may risk to result in an other internal error, so it's probably best to move that call till after print("Got exception...").
Good catch, thanks! Fixed in 699fdb4.