summaryrefslogtreecommitdiffstats
path: root/Modules
diff options
context:
space:
mode:
authorGuilherme Polo <ggpolo@gmail.com>2009-01-03 22:00:39 (GMT)
committerGuilherme Polo <ggpolo@gmail.com>2009-01-03 22:00:39 (GMT)
commit3f5f8228c02618480a2fd6bc8583621a94bacf2f (patch)
tree8a600ee22c8318c48b7f85870c5d08c15dd09c7d /Modules
parent92ad63f748137494e9412e429b8d1f6911a71601 (diff)
downloadcpython-3f5f8228c02618480a2fd6bc8583621a94bacf2f.zip
cpython-3f5f8228c02618480a2fd6bc8583621a94bacf2f.tar.gz
cpython-3f5f8228c02618480a2fd6bc8583621a94bacf2f.tar.bz2
Fix for issue #3638: Remove module level functions in _tkinter that
depend on TkappObject
Diffstat (limited to 'Modules')
-rw-r--r--Modules/_tkinter.c74
1 files changed, 8 insertions, 66 deletions
diff --git a/Modules/_tkinter.c b/Modules/_tkinter.c
index dfafed5..5095060 100644
--- a/Modules/_tkinter.c
+++ b/Modules/_tkinter.c
@@ -2171,19 +2171,7 @@ Tkapp_CreateFileHandler(PyObject *self, PyObject *args)
&file, &mask, &func))
return NULL;
-#ifdef WITH_THREAD
- if (!self && !tcl_lock) {
- /* We don't have the Tcl lock since Tcl is threaded. */
- PyErr_SetString(PyExc_RuntimeError,
- "_tkinter.createfilehandler not supported "
- "for threaded Tcl");
- return NULL;
- }
-#endif
-
- if (self) {
- CHECK_TCL_APPARTMENT;
- }
+ CHECK_TCL_APPARTMENT;
tfile = PyObject_AsFileDescriptor(file);
if (tfile < 0)
@@ -2214,19 +2202,7 @@ Tkapp_DeleteFileHandler(PyObject *self, PyObject *args)
if (!PyArg_ParseTuple(args, "O:deletefilehandler", &file))
return NULL;
-#ifdef WITH_THREAD
- 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;
- }
-#endif
-
- if (self) {
- CHECK_TCL_APPARTMENT;
- }
+ CHECK_TCL_APPARTMENT;
tfile = PyObject_AsFileDescriptor(file);
if (tfile < 0)
@@ -2400,19 +2376,7 @@ Tkapp_CreateTimerHandler(PyObject *self, PyObject *args)
return NULL;
}
-#ifdef WITH_THREAD
- if (!self && !tcl_lock) {
- /* We don't have the Tcl lock since Tcl is threaded. */
- PyErr_SetString(PyExc_RuntimeError,
- "_tkinter.createtimerhandler not supported "
- "for threaded Tcl");
- return NULL;
- }
-#endif
-
- if (self) {
- CHECK_TCL_APPARTMENT;
- }
+ CHECK_TCL_APPARTMENT;
v = Tktt_New(func);
if (v) {
@@ -2438,20 +2402,8 @@ Tkapp_MainLoop(PyObject *selfptr, PyObject *args)
if (!PyArg_ParseTuple(args, "|i:mainloop", &threshold))
return NULL;
-#ifdef WITH_THREAD
- if (!self && !tcl_lock) {
- /* We don't have the Tcl lock since Tcl is threaded. */
- PyErr_SetString(PyExc_RuntimeError,
- "_tkinter.mainloop not supported "
- "for threaded Tcl");
- return NULL;
- }
-#endif
-
- if (self) {
- CHECK_TCL_APPARTMENT;
- self->dispatching = 1;
- }
+ CHECK_TCL_APPARTMENT;
+ self->dispatching = 1;
quitMainLoop = 0;
while (Tk_GetNumMainWindows() > threshold &&
@@ -2461,7 +2413,7 @@ Tkapp_MainLoop(PyObject *selfptr, PyObject *args)
int result;
#ifdef WITH_THREAD
- if (self && self->threaded) {
+ if (self->threaded) {
/* Allow other Python threads to run. */
ENTER_TCL
result = Tcl_DoOneEvent(0);
@@ -2483,15 +2435,13 @@ Tkapp_MainLoop(PyObject *selfptr, PyObject *args)
#endif
if (PyErr_CheckSignals() != 0) {
- if (self)
- self->dispatching = 0;
+ self->dispatching = 0;
return NULL;
}
if (result < 0)
break;
}
- if (self)
- self->dispatching = 0;
+ self->dispatching = 0;
quitMainLoop = 0;
if (errorInCmd) {
@@ -2884,14 +2834,6 @@ static PyMethodDef moduleMethods[] =
{
{"_flatten", Tkinter_Flatten, METH_VARARGS},
{"create", Tkinter_Create, METH_VARARGS},
-#ifdef HAVE_CREATEFILEHANDLER
- {"createfilehandler", Tkapp_CreateFileHandler, METH_VARARGS},
- {"deletefilehandler", Tkapp_DeleteFileHandler, METH_VARARGS},
-#endif
- {"createtimerhandler", Tkapp_CreateTimerHandler, METH_VARARGS},
- {"mainloop", Tkapp_MainLoop, METH_VARARGS},
- {"dooneevent", Tkapp_DoOneEvent, METH_VARARGS},
- {"quit", Tkapp_Quit, METH_VARARGS},
{"setbusywaitinterval",Tkinter_setbusywaitinterval, METH_VARARGS,
setbusywaitinterval_doc},
{"getbusywaitinterval",(PyCFunction)Tkinter_getbusywaitinterval,