Issue #16742: My fix on PyOS_StdioReadline() was incomplete, PyMem_FREE() was
not patched
diff --git a/Parser/myreadline.c b/Parser/myreadline.c
index 562494e..8bb35bd 100644
--- a/Parser/myreadline.c
+++ b/Parser/myreadline.c
@@ -140,13 +140,13 @@
while (n > 0 && p[n-1] != '\n') {
size_t incr = n+2;
if (incr > INT_MAX) {
- PyMem_FREE(p);
+ PyMem_RawFree(p);
PyErr_SetString(PyExc_OverflowError, "input line too long");
return NULL;
}
pr = (char *)PyMem_RawRealloc(p, n + incr);
if (pr == NULL) {
- PyMem_FREE(p);
+ PyMem_RawFree(p);
PyErr_NoMemory();
return NULL;
}
@@ -157,7 +157,7 @@
}
pr = (char *)PyMem_RawRealloc(p, n+1);
if (pr == NULL) {
- PyMem_FREE(p);
+ PyMem_RawFree(p);
PyErr_NoMemory();
return NULL;
}