[Python-checkins] bpo-37419: Fix possible segfaults when passing large sequences to os.posix_spawn() (GH-14409)

Miss Islington (bot) webhook-mailer at python.org
Wed Jun 26 17:20:13 EDT 2019


https://github.com/python/cpython/commit/04d4692579cc4e0204c7fbced3692f8aa4bbb857
commit: 04d4692579cc4e0204c7fbced3692f8aa4bbb857
branch: 3.8
author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com>
committer: GitHub <noreply at github.com>
date: 2019-06-26T14:20:09-07:00
summary:

bpo-37419: Fix possible segfaults when passing large sequences to os.posix_spawn() (GH-14409)


Use Py_ssize_t instead of int for i.
(cherry picked from commit d52a83a3d471ff3c7e9ebfa1731765e5334f7c24)

Co-authored-by: Zackery Spytz <zspytz at gmail.com>

files:
M Modules/posixmodule.c

diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c
index 2d68c9dbb478..70b15360a2bb 100644
--- a/Modules/posixmodule.c
+++ b/Modules/posixmodule.c
@@ -5380,7 +5380,7 @@ parse_file_actions(PyObject *file_actions,
         return -1;
     }
 
-    for (int i = 0; i < PySequence_Fast_GET_SIZE(seq); ++i) {
+    for (Py_ssize_t i = 0; i < PySequence_Fast_GET_SIZE(seq); ++i) {
         file_action = PySequence_Fast_GET_ITEM(seq, i);
         Py_INCREF(file_action);
         if (!PyTuple_Check(file_action) || !PyTuple_GET_SIZE(file_action)) {



More information about the Python-checkins mailing list