Fix for #764099. Instead of undoing Python's signal handlers and

module, just set SIG_DFL for SIGINT.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_4_BRANCH@22030 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robin Dunn
2003-07-16 23:12:02 +00:00
parent 0f50de85ff
commit d80b0153dd
3 changed files with 18 additions and 4 deletions

View File

@@ -970,6 +970,15 @@ of your Mac."""
if redirect:
self.RedirectStdio(filename)
# Set the default handler for SIGINT. This fixes a problem
# where if Ctrl-C is pressed in the console that started this
# app then it will not appear to do anything, (not even send
# KeyboardInterrupt???) but will later segfault on exit. By
# setting the default handler then the app will exit, as
# expected (depending on platform.)
import signal
signal.signal(signal.SIGINT, signal.SIG_DFL)
# this initializes wxWindows and then calls our OnInit
_wxStart(self.OnInit)

View File

@@ -1935,6 +1935,15 @@ of your Mac."""
if redirect:
self.RedirectStdio(filename)
# Set the default handler for SIGINT. This fixes a problem
# where if Ctrl-C is pressed in the console that started this
# app then it will not appear to do anything, (not even send
# KeyboardInterrupt???) but will later segfault on exit. By
# setting the default handler then the app will exit, as
# expected (depending on platform.)
import signal
signal.signal(signal.SIGINT, signal.SIG_DFL)
# this initializes wxWindows and then calls our OnInit
_wxStart(self.OnInit)

View File

@@ -386,10 +386,6 @@ void __wxPreStart(PyObject* moduleDict)
wxPyTMutex = new wxMutex;
#endif
// Restore default signal handlers, (prevents crash upon Ctrl-C in the
// console that launched a wxPython app...)
PyOS_FiniInterrupts();
wxApp::CheckBuildOptions(wxBuildOptions());
wxPyAssertionError = PyErr_NewException("wxPython.wxc.wxPyAssertionError",