diff options
author | Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> | 2023-10-06 23:48:48 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-10-06 23:48:48 (GMT) |
commit | 2465fe00140fd902e7b5b61e12db4a6f7107e2fa (patch) | |
tree | 655e5b1686904c815e01ccfcbbe7d4c57af22f73 | |
parent | b77f5eea70b2f46d7b94c645645db3475e9d4c0e (diff) | |
download | cpython-2465fe00140fd902e7b5b61e12db4a6f7107e2fa.zip cpython-2465fe00140fd902e7b5b61e12db4a6f7107e2fa.tar.gz cpython-2465fe00140fd902e7b5b61e12db4a6f7107e2fa.tar.bz2 |
[3.12] GH-110455: Guard `assert(tstate->thread_id > 0)` with `GH-ifndef HAVE_PTHREAD_STUBS` (GH-110487) (GH-110491)
GH-110455: Guard `assert(tstate->thread_id > 0)` with `GH-ifndef HAVE_PTHREAD_STUBS` (GH-110487)
(cherry picked from commit 5fd8821cf8eb1fe2e8575f8c7cc747cf78855a88)
Co-authored-by: Brett Cannon <brett@python.org>
-rw-r--r-- | Misc/NEWS.d/next/Core and Builtins/2023-10-06-12-00-43.gh-issue-110455.8BjNGg.rst | 3 | ||||
-rw-r--r-- | Python/pystate.c | 4 |
2 files changed, 5 insertions, 2 deletions
diff --git a/Misc/NEWS.d/next/Core and Builtins/2023-10-06-12-00-43.gh-issue-110455.8BjNGg.rst b/Misc/NEWS.d/next/Core and Builtins/2023-10-06-12-00-43.gh-issue-110455.8BjNGg.rst new file mode 100644 index 0000000..47bf17d --- /dev/null +++ b/Misc/NEWS.d/next/Core and Builtins/2023-10-06-12-00-43.gh-issue-110455.8BjNGg.rst @@ -0,0 +1,3 @@ +Guard ``assert(tstate->thread_id > 0)`` with ``#ifndef HAVE_PTHREAD_STUBS``. +This allows for for pydebug builds to work under WASI which (currently) +lacks thread support. diff --git a/Python/pystate.c b/Python/pystate.c index b77827f..6f60c3d 100644 --- a/Python/pystate.c +++ b/Python/pystate.c @@ -264,10 +264,10 @@ static void unbind_tstate(PyThreadState *tstate) { assert(tstate != NULL); - // XXX assert(tstate_is_alive(tstate)); assert(tstate_is_bound(tstate)); - // XXX assert(!tstate->_status.active); +#ifndef HAVE_PTHREAD_STUBS assert(tstate->thread_id > 0); +#endif #ifdef PY_HAVE_THREAD_NATIVE_ID assert(tstate->native_thread_id > 0); #endif |