From: Benjamin Peterson Date: Tue, 21 Jul 2009 14:08:40 +0000 (+0000) Subject: must use _PyThreadState_Current so it isn't checked for NULL #6530 X-Git-Tag: v2.7a1~731 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=24d9175ebe6c6eba6d7c648112a25bc1c14f83c1;p=python must use _PyThreadState_Current so it isn't checked for NULL #6530 --- diff --git a/Objects/dictobject.c b/Objects/dictobject.c index d797173863..c4f93d4b06 100644 --- a/Objects/dictobject.c +++ b/Objects/dictobject.c @@ -712,10 +712,12 @@ PyDict_GetItem(PyObject *op, PyObject *key) } } - /* We can arrive here with a NULL tstate during initialization: - try running "python -Wi" for an example related to string - interning. Let's just hope that no exception occurs then... */ - tstate = PyThreadState_GET(); + /* We can arrive here with a NULL tstate during initialization: try + running "python -Wi" for an example related to string interning. + Let's just hope that no exception occurs then... This must be + _PyThreadState_Current and not PyThreadState_GET() because in debug + mode, it complains if tstate is NULL. */ + tstate = _PyThreadState_Current; if (tstate != NULL && tstate->curexc_type != NULL) { /* preserve the existing exception */ PyObject *err_type, *err_value, *err_tb;