diff options
author | Just van Rossum <just@letterror.com> | 2002-01-04 14:39:29 (GMT) |
---|---|---|
committer | Just van Rossum <just@letterror.com> | 2002-01-04 14:39:29 (GMT) |
commit | 7d1d396134874bf63306d3cb401432afdb7969e7 (patch) | |
tree | 6f07a792c9f601a6326755fd7398924224fa4f02 /Mac/Modules/drag/_Dragmodule.c | |
parent | 3e584aaa2aa66e1dc19764e5cc8ee48afb0801a6 (diff) | |
download | cpython-7d1d396134874bf63306d3cb401432afdb7969e7.zip cpython-7d1d396134874bf63306d3cb401432afdb7969e7.tar.gz cpython-7d1d396134874bf63306d3cb401432afdb7969e7.tar.bz2 |
Callback error handling improvements:
- print traceback
- don't use fprintf()
- clear exception (implied by PyErr_Print())
Diffstat (limited to 'Mac/Modules/drag/_Dragmodule.c')
-rw-r--r-- | Mac/Modules/drag/_Dragmodule.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/Mac/Modules/drag/_Dragmodule.c b/Mac/Modules/drag/_Dragmodule.c index 5312023..c874003 100644 --- a/Mac/Modules/drag/_Dragmodule.c +++ b/Mac/Modules/drag/_Dragmodule.c @@ -898,7 +898,8 @@ dragglue_TrackingHandler(DragTrackingMessage theMessage, WindowPtr theWindow, rv = PyEval_CallObject((PyObject *)handlerRefCon, args); Py_DECREF(args); if ( rv == NULL ) { - fprintf(stderr, "Drag: Exception in TrackingHandler\n"); + PySys_WriteStderr("Drag: Exception in TrackingHandler\n"); + PyErr_Print(); return -1; } i = -1; @@ -923,7 +924,8 @@ dragglue_ReceiveHandler(WindowPtr theWindow, void *handlerRefCon, rv = PyEval_CallObject((PyObject *)handlerRefCon, args); Py_DECREF(args); if ( rv == NULL ) { - fprintf(stderr, "Drag: Exception in ReceiveHandler\n"); + PySys_WriteStderr("Drag: Exception in ReceiveHandler\n"); + PyErr_Print(); return -1; } i = -1; @@ -951,7 +953,8 @@ dragglue_SendData(FlavorType theType, void *dragSendRefCon, rv = PyEval_CallObject(self->sendproc, args); Py_DECREF(args); if ( rv == NULL ) { - fprintf(stderr, "Drag: Exception in SendDataHandler\n"); + PySys_WriteStderr("Drag: Exception in SendDataHandler\n"); + PyErr_Print(); return -1; } i = -1; |