summaryrefslogtreecommitdiffstats
path: root/Objects
diff options
context:
space:
mode:
authorVictor Stinner <vstinner@python.org>2020-01-27 21:37:44 (GMT)
committerGitHub <noreply@github.com>2020-01-27 21:37:44 (GMT)
commit47ee8a6063c22ec272fe7a2d95d12f7811ebb48b (patch)
tree8586b166c64e8a61e7f16d73287c38b6e4584303 /Objects
parenta94c6b61aa5c09237b8105e5aee638cd54197b6f (diff)
downloadcpython-47ee8a6063c22ec272fe7a2d95d12f7811ebb48b.zip
cpython-47ee8a6063c22ec272fe7a2d95d12f7811ebb48b.tar.gz
cpython-47ee8a6063c22ec272fe7a2d95d12f7811ebb48b.tar.bz2
bpo-38631: Avoid Py_FatalError() in _memory_release() (GH-18214)
If the export count is negative, _memory_release() now raises a SystemError and returns -1, rather than calling Py_FatalError() which aborts the process.
Diffstat (limited to 'Objects')
-rw-r--r--Objects/memoryobject.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/Objects/memoryobject.c b/Objects/memoryobject.c
index 66920eaf..d9dd117 100644
--- a/Objects/memoryobject.c
+++ b/Objects/memoryobject.c
@@ -1048,7 +1048,8 @@ _memory_release(PyMemoryViewObject *self)
return -1;
}
- Py_FatalError("_memory_release(): negative export count");
+ PyErr_SetString(PyExc_SystemError,
+ "_memory_release(): negative export count");
return -1;
}