commit | 7cacd2eb92dad7e63a0249974617de33f4c4a0e0 | [log] [tgz] |
---|---|---|
author | Stefan Krah <skrah@bytereef.org> | Tue Aug 21 08:16:09 2012 +0200 |
committer | Stefan Krah <skrah@bytereef.org> | Tue Aug 21 08:16:09 2012 +0200 |
tree | 2f9e15fa1ce4862ec43197a211b56f222272f432 | |
parent | 514dbb03ba23cd901381a9182871bbe2ebc14100 [diff] [blame] |
Issue #15736: Fix overflow in _PySequence_BytesToCharpArray().
diff --git a/Objects/abstract.c b/Objects/abstract.c index 299daf5..7705d05 100644 --- a/Objects/abstract.c +++ b/Objects/abstract.c
@@ -2728,6 +2728,13 @@ if (argc == -1) return NULL; + assert(argc >= 0); + + if ((size_t)argc > (PY_SSIZE_T_MAX-sizeof(char *)) / sizeof(char *)) { + PyErr_NoMemory(); + return NULL; + } + array = malloc((argc + 1) * sizeof(char *)); if (array == NULL) { PyErr_NoMemory();