]> granicus.if.org Git - python/commit
Add _PyThreadState_UncheckedGet()
authorVictor Stinner <victor.stinner@gmail.com>
Wed, 20 Jan 2016 10:12:38 +0000 (11:12 +0100)
committerVictor Stinner <victor.stinner@gmail.com>
Wed, 20 Jan 2016 10:12:38 +0000 (11:12 +0100)
commitbfd316e750bc3040c08d1b5872e2de188e8c1e5f
treea0f5fc0ce8c171cd2b1f875c33b6089471c07447
parentaebb6d3682e08c93d8468a9291180c5cbdc2df1b
Add _PyThreadState_UncheckedGet()

Issue #26154: Add a new private _PyThreadState_UncheckedGet() function which
gets the current thread state, but don't call Py_FatalError() if it is NULL.

Python 3.5.1 removed the _PyThreadState_Current symbol from the Python C API to
no more expose complex and private atomic types. Atomic types depends on the
compiler or can even depend on compiler options. The new function
_PyThreadState_UncheckedGet() allows to get the variable value without having
to care of the exact implementation of atomic types.

Changes:

* Replace direct usage of the _PyThreadState_Current variable with a call to
  _PyThreadState_UncheckedGet().
* In pystate.c, replace direct usage of the _PyThreadState_Current variable
  with the PyThreadState_GET() macro for readability.
* Document also PyThreadState_Get() in pystate.h
Include/pystate.h
Misc/NEWS
Modules/faulthandler.c
Objects/dictobject.c
Python/errors.c
Python/pystate.c
Python/sysmodule.c