summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGregory P. Smith <greg@krypto.org>2023-05-20 17:09:23 (GMT)
committerGitHub <noreply@github.com>2023-05-20 17:09:23 (GMT)
commitd1732feea0eadd4ccc3516440d0c071be0093dec (patch)
treee1d6c07ec0be95adfdc6af8579b36d32e00c7aad
parent68ee8b3f15b744339c156bfeb583a414061ab22d (diff)
downloadcpython-d1732feea0eadd4ccc3516440d0c071be0093dec.zip
cpython-d1732feea0eadd4ccc3516440d0c071be0093dec.tar.gz
cpython-d1732feea0eadd4ccc3516440d0c071be0093dec.tar.bz2
gh-104372: Use non-Raw malloc for c_fds_to_keep in _posixsubprocess (#104697)
Use non-Raw malloc for c_fds_to_keep as the code could ask for 0 length.
-rw-r--r--Modules/_posixsubprocess.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/Modules/_posixsubprocess.c b/Modules/_posixsubprocess.c
index 75965d3..1b7fe71 100644
--- a/Modules/_posixsubprocess.c
+++ b/Modules/_posixsubprocess.c
@@ -1074,7 +1074,7 @@ subprocess_fork_exec_impl(PyObject *module, PyObject *process_args,
#endif /* HAVE_SETREUID */
}
- c_fds_to_keep = PyMem_RawMalloc(fds_to_keep_len * sizeof(int));
+ c_fds_to_keep = PyMem_Malloc(fds_to_keep_len * sizeof(int));
if (c_fds_to_keep == NULL) {
PyErr_SetString(PyExc_MemoryError, "failed to malloc c_fds_to_keep");
goto cleanup;
@@ -1157,7 +1157,7 @@ subprocess_fork_exec_impl(PyObject *module, PyObject *process_args,
cleanup:
if (c_fds_to_keep != NULL) {
- PyMem_RawFree(c_fds_to_keep);
+ PyMem_Free(c_fds_to_keep);
}
if (saved_errno != 0) {