Stefan Bellon wrote: > Hi all! > > I am embedding Python into a GUI application in a way that the GUI is > scriptable using Python. > > Now I have come to a problem that when the user puts a "sys.exit(0)" > into his script to end the script, not only the script is terminated, > but also the GUI application itself. This is not the intended behaviour. > > As in Python itself you can catch SystemExit, I think this should be > the way to go. But how do I catch this exception from within the C API? > > Thanks in advance for any hints. >
Have a look at the following doc page for handling exceptions with the C api: http://docs.python.org/api/exceptionHandling.html Also, here is some sample code that will catch system exit exceptions: //Call python code ... //Check for system exit exception if(PyErr_Occurred()) { if(PyErr_ExceptionMatches(PyExc_SystemExit)) { //handle system exit PyErr_Clear(); } else { PyErr_Print(); } } -- http://mail.python.org/mailman/listinfo/python-list