diff -ru subprocess32-3.2.6/_posixsubprocess_helpers.c subprocess32-3.2.6_patched/_posixsubprocess_helpers.c
--- subprocess32-3.2.6/_posixsubprocess_helpers.c 2012-06-09 08:31:40.000000000 +0200
+++ subprocess32-3.2.6_patched/_posixsubprocess_helpers.c 2018-08-22 16:38:07.485734481 +0200
@@ -110,6 +110,12 @@
if (argc == -1)
return NULL;
+ /* Avoid 32-bit overflows to malloc() from unreasonable values. */
+ if (argc > 0x10000000) {
+ PyErr_NoMemory();
+ return NULL;
+ }
+
array = malloc((argc + 1) * sizeof(char *));
if (array == NULL) {
PyErr_NoMemory();