diff --git a/Misc/NEWS.d/next/Core and Builtins/2023-09-11-12-41-42.gh-issue-109216.60QOSb.rst b/Misc/NEWS.d/next/Core and Builtins/2023-09-11-12-41-42.gh-issue-109216.60QOSb.rst new file mode 100644 index 00000000000..aa8b2832af2 --- /dev/null +++ b/Misc/NEWS.d/next/Core and Builtins/2023-09-11-12-41-42.gh-issue-109216.60QOSb.rst @@ -0,0 +1 @@ +Fix possible memory leak in :opcode:`BUILD_MAP`. diff --git a/Python/bytecodes.c b/Python/bytecodes.c index 7c49f9a8cc7..08d91b5efe5 100644 --- a/Python/bytecodes.c +++ b/Python/bytecodes.c @@ -1600,9 +1600,6 @@ dummy_func( values, 2, values+1, 2, oparg); - if (map == NULL) - goto error; - DECREF_INPUTS(); ERROR_IF(map == NULL, error); } diff --git a/Python/executor_cases.c.h b/Python/executor_cases.c.h index a4d813056aa..8f3febe7d1a 100644 --- a/Python/executor_cases.c.h +++ b/Python/executor_cases.c.h @@ -1433,9 +1433,6 @@ values, 2, values+1, 2, oparg); - if (map == NULL) - goto error; - for (int _i = oparg*2; --_i >= 0;) { Py_DECREF(values[_i]); } diff --git a/Python/generated_cases.c.h b/Python/generated_cases.c.h index 27cda1f03da..b86e35f84fd 100644 --- a/Python/generated_cases.c.h +++ b/Python/generated_cases.c.h @@ -2077,9 +2077,6 @@ values, 2, values+1, 2, oparg); - if (map == NULL) - goto error; - for (int _i = oparg*2; --_i >= 0;) { Py_DECREF(values[_i]); }