[3.13] gh-120838: Add _PyThreadState_WHENCE_FINI (gh-121013)

We also add _PyThreadState_NewBound() and drop _PyThreadState_SetWhence().

This change only affects internal API.

(cherry picked from commit a905721b9c, AKA gh-121010)

Co-authored-by: Eric Snow <ericsnowcurrently@gmail.com>
This commit is contained in:
Miss Islington (bot) 2024-06-26 23:32:00 +02:00 committed by GitHub
parent bc515b332b
commit c052b192aa
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
8 changed files with 27 additions and 27 deletions

View file

@ -1518,11 +1518,11 @@ switch_to_main_interpreter(PyThreadState *tstate)
if (_Py_IsMainInterpreter(tstate->interp)) {
return tstate;
}
PyThreadState *main_tstate = PyThreadState_New(_PyInterpreterState_Main());
PyThreadState *main_tstate = _PyThreadState_NewBound(
_PyInterpreterState_Main(), _PyThreadState_WHENCE_EXEC);
if (main_tstate == NULL) {
return NULL;
}
main_tstate->_whence = _PyThreadState_WHENCE_EXEC;
#ifndef NDEBUG
PyThreadState *old_tstate = PyThreadState_Swap(main_tstate);
assert(old_tstate == tstate);