diff options
author | Guido van Rossum <guido@python.org> | 1997-07-19 19:55:50 (GMT) |
---|---|---|
committer | Guido van Rossum <guido@python.org> | 1997-07-19 19:55:50 (GMT) |
commit | 9cc8a20cd26102fc8b5f210a0e3fa2a92de193b4 (patch) | |
tree | 9e8b1612fe7c9b7e1e14f54fbc3ec3d957b9c172 | |
parent | 4c125700d1664aa25ad86fb9b88349ab68210be0 (diff) | |
download | cpython-9cc8a20cd26102fc8b5f210a0e3fa2a92de193b4.zip cpython-9cc8a20cd26102fc8b5f210a0e3fa2a92de193b4.tar.gz cpython-9cc8a20cd26102fc8b5f210a0e3fa2a92de193b4.tar.bz2 |
Moved PyEval_{Acquire,Release}Thread() to within the same #ifdef
WITH_THREAD as PyEval_InitThreads().
Removed use of Py_SuppressPrintingFlag.
-rw-r--r-- | Python/ceval.c | 44 |
1 files changed, 23 insertions, 21 deletions
diff --git a/Python/ceval.c b/Python/ceval.c index be4ffec..ec2e419 100644 --- a/Python/ceval.c +++ b/Python/ceval.c @@ -129,6 +129,28 @@ PyEval_InitThreads() main_thread = get_thread_ident(); } +void +PyEval_AcquireThread(tstate) + PyThreadState *tstate; +{ + if (tstate == NULL) + Py_FatalError("PyEval_AcquireThread: NULL new thread state"); + acquire_lock(interpreter_lock, 1); + if (PyThreadState_Swap(tstate) != NULL) + Py_FatalError( + "PyEval_AcquireThread: non-NULL old thread state"); +} + +void +PyEval_ReleaseThread(tstate) + PyThreadState *tstate; +{ + if (tstate == NULL) + Py_FatalError("PyEval_ReleaseThread: NULL thread state"); + if (PyThreadState_Swap(NULL) != tstate) + Py_FatalError("PyEval_ReleaseThread: wrong thread state"); + release_lock(interpreter_lock); +} #endif /* Functions save_thread and restore_thread are always defined so @@ -167,25 +189,6 @@ PyEval_RestoreThread(tstate) #endif } -#ifdef WITH_THREAD -void -PyEval_AcquireThread(tstate) - PyThreadState *tstate; -{ - acquire_lock(interpreter_lock, 1); - if (PyThreadState_Swap(tstate) != NULL) - Py_FatalError("PyEval_AcquireThread: non-NULL old state"); -} - -void -PyEval_ReleaseThread(tstate) - PyThreadState *tstate; -{ - if (PyThreadState_Swap(NULL) != tstate) - Py_FatalError("PyEval_ReleaseThread: wrong thread state"); - release_lock(interpreter_lock); -} -#endif /* Mechanism whereby asynchronously executing callbacks (e.g. UNIX signal handlers or Mac I/O completion routines) can schedule calls @@ -1000,8 +1003,7 @@ eval_code2(co, globals, locals, /* Before printing, also assign to '_' */ if (v != Py_None && (err = PyDict_SetItemString( - f->f_builtins, "_", v)) == 0 && - !Py_SuppressPrintingFlag) { + f->f_builtins, "_", v)) == 0) { err = Py_FlushLine(); if (err == 0) { x = PySys_GetObject("stdout"); |