From: Benjamin Peterson Date: Tue, 17 Jun 2014 06:49:02 +0000 (-0700) Subject: remove extra call to tstate_delete_common (merge artifact) X-Git-Tag: v3.4.2rc1~370 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=95d75194ac2a96bef077d8ac6c5879c14ca8bb08;p=python remove extra call to tstate_delete_common (merge artifact) --- diff --git a/Python/pystate.c b/Python/pystate.c index 8c1fad215c..7afca17b7e 100644 --- a/Python/pystate.c +++ b/Python/pystate.c @@ -423,6 +423,8 @@ PyThreadState_DeleteCurrent() Py_FatalError( "PyThreadState_DeleteCurrent: no current tstate"); _Py_atomic_store_relaxed(&_PyThreadState_Current, NULL); + if (autoInterpreterState && PyThread_get_key_value(autoTLSkey) == tstate) + PyThread_delete_key_value(autoTLSkey); /* 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 @@ -431,9 +433,6 @@ PyThreadState_DeleteCurrent() */ 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 */