diff --git a/src/safe_array.c b/src/safe_array.c index 2f77739..663e3cb 100644 --- a/src/safe_array.c +++ b/src/safe_array.c @@ -21,7 +21,7 @@ */ array_t *array_init(size_t size, size_t rows) { - array_t *arr = calloc(sizeof(array_t) + (size * rows), 1); + array_t *arr = calloc(sizeof(array_t) + (size * rows - 1), 1); if (!arr) { fprintf(stderr, "%s: Failed to allocate memory for array", __func__); @@ -109,7 +109,7 @@ void array_free(array_t *arr) */ array_2d_t *array_2d_init(size_t size, size_t rows, size_t cols) { - array_2d_t *arr = calloc(sizeof(array_2d_t) + (size * rows * cols), 1); + array_2d_t *arr = calloc(sizeof(array_2d_t), 1); if (!arr) { fprintf(stderr, "%s: Failed to allocate memory for array", __func__);