diff options
Diffstat (limited to 'PC/_subprocess.c')
-rw-r--r-- | PC/_subprocess.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/PC/_subprocess.c b/PC/_subprocess.c index 27d3dc6..2338f30 100644 --- a/PC/_subprocess.c +++ b/PC/_subprocess.c @@ -329,7 +329,8 @@ gethandle(PyObject* obj, char* name) static PyObject* getenvironment(PyObject* environment) { - int i, envsize; + int i; + Py_ssize_t envsize; PyObject* out = NULL; PyObject* keys; PyObject* values; @@ -356,7 +357,7 @@ getenvironment(PyObject* environment) p = PyUnicode_AS_UNICODE(out); for (i = 0; i < envsize; i++) { - int ksize, vsize, totalsize; + Py_ssize_t ksize, vsize, totalsize; PyObject* key = PyList_GET_ITEM(keys, i); PyObject* value = PyList_GET_ITEM(values, i); @@ -370,7 +371,7 @@ getenvironment(PyObject* environment) totalsize = (p - PyUnicode_AS_UNICODE(out)) + ksize + 1 + vsize + 1 + 1; if (totalsize > PyUnicode_GET_SIZE(out)) { - int offset = p - PyUnicode_AS_UNICODE(out); + Py_ssize_t offset = p - PyUnicode_AS_UNICODE(out); PyUnicode_Resize(&out, totalsize + 1024); p = PyUnicode_AS_UNICODE(out) + offset; } @@ -682,5 +683,7 @@ PyInit__subprocess() defint(d, "INFINITE", INFINITE); defint(d, "WAIT_OBJECT_0", WAIT_OBJECT_0); defint(d, "CREATE_NEW_CONSOLE", CREATE_NEW_CONSOLE); + defint(d, "CREATE_NEW_PROCESS_GROUP", CREATE_NEW_PROCESS_GROUP); + return m; } |