[3.10] bpo-44645: Check for interrupts on any potentially backwards edge. (GH-27167) (GH-27183)

(cherry picked from commit 000e70ad52)

Co-authored-by: Mark Shannon <mark@hotpy.org>
This commit is contained in:
Mark Shannon 2021-07-16 11:48:46 +01:00 committed by GitHub
parent 705988056e
commit 0e349ea554
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 31 additions and 1 deletions

View file

@ -3759,14 +3759,17 @@ main_loop:
if (Py_IsFalse(cond)) {
Py_DECREF(cond);
JUMPTO(oparg);
CHECK_EVAL_BREAKER();
DISPATCH();
}
err = PyObject_IsTrue(cond);
Py_DECREF(cond);
if (err > 0)
;
else if (err == 0)
else if (err == 0) {
JUMPTO(oparg);
CHECK_EVAL_BREAKER();
}
else
goto error;
DISPATCH();
@ -3783,12 +3786,14 @@ main_loop:
if (Py_IsTrue(cond)) {
Py_DECREF(cond);
JUMPTO(oparg);
CHECK_EVAL_BREAKER();
DISPATCH();
}
err = PyObject_IsTrue(cond);
Py_DECREF(cond);
if (err > 0) {
JUMPTO(oparg);
CHECK_EVAL_BREAKER();
}
else if (err == 0)
;