diff options
| author | peter <peter@pmikkelsen.com> | 2026-08-10 09:18:23 +0000 |
|---|---|---|
| committer | peter <peter@pmikkelsen.com> | 2026-08-10 09:18:23 +0000 |
| commit | 3a81615601bf37ffc4f7b570030709ac0782e2ed (patch) | |
| tree | fc5a4d59b9bb62521d37a878c1fa7bb34d3d2bb5 /src/libmain.c | |
| parent | e30299f2cd59c46c2d733e38139da96c93f9acf4 (diff) | |
Avoid calling malloc/free in the library code.
FossilOrigin-Name: 3e7c2c1b4beda2a729c880caf1a41c441e0a8387d40b666ac7163eb1346653b5
Diffstat (limited to 'src/libmain.c')
| -rw-r--r-- | src/libmain.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/libmain.c b/src/libmain.c index 1458bf8..93ad2a0 100644 --- a/src/libmain.c +++ b/src/libmain.c @@ -1,13 +1,14 @@ -#include <aplwc.h> #include <aplwc_internal.h> AplwcRc -aplwc_new(Aplwc **p) +aplwc_new(Aplwc **p, uint8_t *data, size_t size) { - *p = malloc_zero(sizeof(Aplwc)); + Memory m = memory_init(data, size); + *p = memory_alloc_aplwc(&m); if(*p == NULL) - RETURN_ERROR(*p, MALLOC_FAILED, ""); - + RETURN_ERROR(*p, OUT_OF_MEMORY, ""); + (*p)->memory = m; + return APLWC_OK; } @@ -15,7 +16,7 @@ AplwcRc aplwc_destroy(Aplwc *p) { if(p) - free(p); + memory_free_aplwc(&p->memory, p); return APLWC_OK; } |