diff options
author | Benjamin Peterson <benjamin@python.org> | 2014-06-17 00:34:14 -0700 |
---|---|---|
committer | Benjamin Peterson <benjamin@python.org> | 2014-06-17 00:34:14 -0700 |
commit | eecc7013d2da844a0d2cf1b08cadd9ffceb11155 (patch) | |
tree | d3552096898ad196d8ad4eab7609a72103694f9d /Python | |
parent | ac11692d947a5d4d6566127cfda8ed9188e3c438 (diff) | |
download | cpython-eecc7013d2da844a0d2cf1b08cadd9ffceb11155.tar.gz |
revert tstate_delete_common, since it's pretty much wrong
Diffstat (limited to 'Python')
-rw-r--r-- | Python/pystate.c | 9 |
1 files changed, 1 insertions, 8 deletions
diff --git a/Python/pystate.c b/Python/pystate.c index 7584ea0d83..eb992c1780 100644 --- a/Python/pystate.c +++ b/Python/pystate.c @@ -315,16 +315,9 @@ PyThreadState_DeleteCurrent() Py_FatalError( "PyThreadState_DeleteCurrent: no current tstate"); _PyThreadState_Current = NULL; - /* - Only call tstate_delete_common to have the tstate if we're not finalizing - or we're the main thread. The main thread will do this for us. Not calling - tstate_delete_common means we won't lock the interpreter head lock, - avoiding a possible deadlock with the GIL. - */ - if (!_Py_Finalizing || _Py_Finalizing == tstate) - tstate_delete_common(tstate); if (autoInterpreterState && PyThread_get_key_value(autoTLSkey) == tstate) PyThread_delete_key_value(autoTLSkey); + tstate_delete_common(tstate); PyEval_ReleaseLock(); } #endif /* WITH_THREAD */ |