Fix SF #692416, don't crash interpreter for _tkinter.deletefilehandler

in addition to createfilehandler and creaetetimerhandler.
This commit is contained in:
Neal Norwitz 2003-03-03 21:16:39 +00:00
parent a52b85262a
commit 12e2217501
2 changed files with 17 additions and 1 deletions

View File

@ -24,6 +24,10 @@ Core and builtins
Extension modules
-----------------
- Using createfilehandler, deletefilehandler, createtimerhandler functions
on Tkinter.tkinter (_tkinter module) no longer crashes the interpreter.
See SF bug #692416.
- Modified the fcntl.ioctl() function to allow modification of a passed
mutable buffer (for details see the reference documentation).

View File

@ -2243,7 +2243,19 @@ Tkapp_DeleteFileHandler(PyObject *self, PyObject *args)
if (!PyArg_ParseTuple(args, "O:deletefilehandler", &file))
return NULL;
CHECK_TCL_APPARTMENT;
if (!self && !tcl_lock) {
/* We don't have the Tcl lock since Tcl is threaded. */
PyErr_SetString(PyExc_RuntimeError,
"_tkinter.deletefilehandler not supported "
"for threaded Tcl");
return NULL;
}
if (self) {
CHECK_TCL_APPARTMENT;
}
tfile = PyObject_AsFileDescriptor(file);
if (tfile < 0)
return NULL;