summaryrefslogtreecommitdiffstats
path: root/Include/internal
diff options
context:
space:
mode:
authorVictor Stinner <vstinner@python.org>2020-03-18 18:28:53 (GMT)
committerGitHub <noreply@github.com>2020-03-18 18:28:53 (GMT)
commit8849e5962ba481d5d414b3467a256aba2134b4da (patch)
tree469b2d1023971843ce4e29f88ecbc8503342830f /Include/internal
parent1c60567b9a4c8f77e730de9d22690d8e68d7e5f6 (diff)
downloadcpython-8849e5962ba481d5d414b3467a256aba2134b4da.zip
cpython-8849e5962ba481d5d414b3467a256aba2134b4da.tar.gz
cpython-8849e5962ba481d5d414b3467a256aba2134b4da.tar.bz2
bpo-39984: trip_signal() uses PyGILState_GetThisThreadState() (GH-19061)
bpo-37127, bpo-39984: * trip_signal() and Py_AddPendingCall() now get the current Python thread state using PyGILState_GetThisThreadState() rather than _PyRuntimeState_GetThreadState() to be able to get it even if the GIL is released. * _PyEval_SignalReceived() now expects tstate rather than ceval. * Remove ceval parameter of _PyEval_AddPendingCall(): ceval is now get from tstate parameter.
Diffstat (limited to 'Include/internal')
-rw-r--r--Include/internal/pycore_ceval.h4
1 files changed, 1 insertions, 3 deletions
diff --git a/Include/internal/pycore_ceval.h b/Include/internal/pycore_ceval.h
index 4e5ae17..ccfb9ab 100644
--- a/Include/internal/pycore_ceval.h
+++ b/Include/internal/pycore_ceval.h
@@ -19,11 +19,9 @@ extern void _Py_FinishPendingCalls(PyThreadState *tstate);
extern void _PyEval_InitRuntimeState(struct _ceval_runtime_state *);
extern void _PyEval_InitState(struct _ceval_state *);
extern void _PyEval_FiniThreads(PyThreadState *tstate);
-PyAPI_FUNC(void) _PyEval_SignalReceived(
- struct _ceval_runtime_state *ceval);
+PyAPI_FUNC(void) _PyEval_SignalReceived(PyThreadState *tstate);
PyAPI_FUNC(int) _PyEval_AddPendingCall(
PyThreadState *tstate,
- struct _ceval_runtime_state *ceval,
int (*func)(void *),
void *arg);
PyAPI_FUNC(void) _PyEval_SignalAsyncExc(PyThreadState *tstate);