summaryrefslogtreecommitdiff
path: root/tests/aplwc_read.c
diff options
context:
space:
mode:
Diffstat (limited to 'tests/aplwc_read.c')
-rw-r--r--tests/aplwc_read.c24
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;