protect IPython from bad custom exception handlers...
protect IPython from bad custom exception handlers
Previously, errors in custom handlers would result in the custom exception
handler's error being printed in lieu of the real exception, and certain cases could cause infinite loops.
Now, if CustomTB fails it is unregistered immediately, and the original TB is also displayed.
IPython's own BdbQuit_IPython_excepthook had an invalid signature, which revealed this issue, and has also been fixed.
test included.
closes
#692