blob: 0bb12805bb815db4338fac67e624e43be590446a (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
/*
* Copyright (c) 2023 Marc Pervaz Boocha
*
* SPDX-License-Identifier: MIT
*/
#include <alloc.h>
#include <mem.h>
void *calt_realloc(void *ptr, size_t size) {
if (size) {
struct calt_alloc alloc = calt_get_alloc();
if (alloc.realloc) {
return alloc.realloc(ptr, size);
} else {
void *new = calt_malloc(size);
if (new && (ptr)) {
calt_memcpy(new, ptr, size);
calt_free(ptr);
}
return new;
}
} else {
calt_free(ptr);
return NULL;
}
}
|