YAC 3.18.0
Yet Another Coupler
Loading...
Searching...
No Matches
ensure_array_size.c
Go to the documentation of this file.
1// Copyright (c) 2024 The YAC Authors
2//
3// SPDX-License-Identifier: BSD-3-Clause
4
5#include <stdio.h>
6
7#include "ensure_array_size.h"
8#include "utils_core.h"
9
10void
11yac_realloc_array(void **array, size_t elem_size, size_t *curr_array_size,
12 size_t requested_size)
13{
14 const size_t array_inc_size = (1024 + elem_size - 1)/ elem_size;
15 *curr_array_size = array_inc_size
16 * ((requested_size + array_inc_size) / array_inc_size);
17 *array = xrealloc(*array, *curr_array_size * elem_size);
18 if ((*array == NULL) && ((*curr_array_size * elem_size) != 0)) {
19 // GCOVR_EXCL_START
20 fprintf(stderr, "error in realloc\n");
21 exit(EXIT_FAILURE);
22 // GCOVR_EXCL_STOP
23 }
24}
25
void yac_realloc_array(void **array, size_t elem_size, size_t *curr_array_size, size_t requested_size)
#define xrealloc(ptr, size)
Definition ppm_xfuncs.h:67