diff options
| author | peter <peter@pmikkelsen.com> | 2026-08-30 20:52:43 +0000 |
|---|---|---|
| committer | peter <peter@pmikkelsen.com> | 2026-08-30 20:52:43 +0000 |
| commit | 729964bea692f9683860978b89848784a7fc2f46 (patch) | |
| tree | ba5b37a61206142fce18214c7af341ac837a7923 /tests/aplwc_read.c | |
| parent | 04827577ea502a9f0edc69e00e008751c8119cbc (diff) | |
Still a lot to be done, but I'm going to bed.
Two remaining big issues:
* aplwc (the parameter passed "everywhere") - should it move or not?
* values returned from the public API should not move.
FossilOrigin-Name: 31ab3154b8f3d5ac167218496e9e204324bf0ac9d36b7bada8fe2a6c8f93d51c
Diffstat (limited to 'tests/aplwc_read.c')
| -rw-r--r-- | tests/aplwc_read.c | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/tests/aplwc_read.c b/tests/aplwc_read.c index 8c5ce37..42a47c2 100644 --- a/tests/aplwc_read.c +++ b/tests/aplwc_read.c @@ -1,11 +1,27 @@ #include <stdio.h> #include <stdlib.h> +#include <string.h> #include <aplwc.h> +static void * +my_alloc(size_t min, size_t max, size_t *actual) +{ + (void)max; + + *actual = min; + return malloc(min); +} + +static void +my_dealloc(void *p) +{ + free(p); +} + int main(int argc, char *argv[]) { - uint8_t data[20000]; + struct aplwc_fns fns; char *input; struct aplwc *aplwc; struct aplwc_line *line; @@ -13,6 +29,10 @@ main(int argc, char *argv[]) FILE *f; long input_size; + memset(&fns, 0, sizeof(fns)); + fns.alloc = my_alloc; + fns.dealloc = my_dealloc; + if(argc != 2) return 1; @@ -33,7 +53,7 @@ main(int argc, char *argv[]) return 1; input[input_size] = 0; - ret = aplwc_new(&aplwc, data, sizeof(data)); + ret = aplwc_new(&aplwc, fns); if(ret) return 1; |