diff options
Diffstat (limited to 'Parser')
-rw-r--r-- | Parser/parsetok.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/Parser/parsetok.c b/Parser/parsetok.c index 554455d..cb94721 100644 --- a/Parser/parsetok.c +++ b/Parser/parsetok.c @@ -37,11 +37,13 @@ growable_comment_array_init(growable_comment_array *arr, size_t initial_size) { static int growable_comment_array_add(growable_comment_array *arr, int lineno, char *comment) { if (arr->num_items >= arr->size) { - arr->size *= 2; - arr->items = realloc(arr->items, arr->size * sizeof(*arr->items)); - if (!arr->items) { + size_t new_size = arr->size * 2; + void *new_items_array = realloc(arr->items, new_size * sizeof(*arr->items)); + if (!new_items_array) { return 0; } + arr->items = new_items_array; + arr->size = new_size; } arr->items[arr->num_items].lineno = lineno; |