diff options
Diffstat (limited to 'Objects/obmalloc.c')
-rw-r--r-- | Objects/obmalloc.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/Objects/obmalloc.c b/Objects/obmalloc.c index 2f2b35e..efbd566 100644 --- a/Objects/obmalloc.c +++ b/Objects/obmalloc.c @@ -526,9 +526,9 @@ new_arena(void) numarenas = maxarenas ? maxarenas << 1 : INITIAL_ARENA_OBJECTS; if (numarenas <= maxarenas) return NULL; /* overflow */ - nbytes = numarenas * sizeof(*arenas); - if (nbytes / sizeof(*arenas) != numarenas) + if (numarenas > PY_SIZE_MAX / sizeof(*arenas)) return NULL; /* overflow */ + nbytes = numarenas * sizeof(*arenas); arenaobj = (struct arena_object *)realloc(arenas, nbytes); if (arenaobj == NULL) return NULL; |