aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVictor Stinner <vstinner@python.org>2020-01-30 12:20:48 +0100
committerGitHub <noreply@github.com>2020-01-30 12:20:48 +0100
commit17c68b8107e348aeaaa05f7ac5072cacff916022 (patch)
tree31a937cee879bb5cf9c9433eecdb336da1ebf058 /Python/ceval.c
parentbpo-38631: Avoid Py_FatalError() in unicodeobject.c (GH-18281) (diff)
downloadcpython-17c68b8107e348aeaaa05f7ac5072cacff916022.tar.gz
cpython-17c68b8107e348aeaaa05f7ac5072cacff916022.tar.bz2
cpython-17c68b8107e348aeaaa05f7ac5072cacff916022.zip
bpo-38631: Replace Py_FatalError() with assert() in ceval.c (GH-18279)
Replace a few Py_FatalError() calls if tstate is NULL with assert(tstate != NULL) in ceval.c. PyEval_AcquireThread(), PyEval_ReleaseThread() and PyEval_RestoreThread() must never be called with a NULL tstate.
Diffstat (limited to 'Python/ceval.c')
-rw-r--r--Python/ceval.c14
1 files changed, 4 insertions, 10 deletions
diff --git a/Python/ceval.c b/Python/ceval.c
index 2770dc6d08d..2bf64eda422 100644
--- a/Python/ceval.c
+++ b/Python/ceval.c
@@ -302,9 +302,7 @@ PyEval_ReleaseLock(void)
void
PyEval_AcquireThread(PyThreadState *tstate)
{
- if (tstate == NULL) {
- Py_FatalError("PyEval_AcquireThread: NULL new thread state");
- }
+ assert(tstate != NULL);
_PyRuntimeState *runtime = tstate->interp->runtime;
struct _ceval_runtime_state *ceval = &runtime->ceval;
@@ -321,9 +319,7 @@ PyEval_AcquireThread(PyThreadState *tstate)
void
PyEval_ReleaseThread(PyThreadState *tstate)
{
- if (tstate == NULL) {
- Py_FatalError("PyEval_ReleaseThread: NULL thread state");
- }
+ assert(tstate != NULL);
_PyRuntimeState *runtime = tstate->interp->runtime;
PyThreadState *new_tstate = _PyThreadState_Swap(&runtime->gilstate, NULL);
@@ -385,12 +381,10 @@ PyEval_SaveThread(void)
void
PyEval_RestoreThread(PyThreadState *tstate)
{
+ assert(tstate != NULL);
+
_PyRuntimeState *runtime = tstate->interp->runtime;
struct _ceval_runtime_state *ceval = &runtime->ceval;
-
- if (tstate == NULL) {
- Py_FatalError("PyEval_RestoreThread: NULL tstate");
- }
assert(gil_created(&ceval->gil));
int err = errno;