From 4b1f9e2cb436e74ce6084dbc35df5f052cb701bf Mon Sep 17 00:00:00 2001 From: David Phillips Date: Sun, 4 Aug 2019 14:21:05 +1200 Subject: Wrap tests in valgrind, clean up memory leaks --- lex.c | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'lex.c') diff --git a/lex.c b/lex.c index 949425e..6ed8007 100644 --- a/lex.c +++ b/lex.c @@ -380,6 +380,24 @@ int lex_line(void) { return 0; } +void lex_free_tok(struct token t) +{ + if (t.s_val) + free(t.s_val); + +} + +void lex_free(struct token *ts, size_t t_count) +{ + size_t i = 0; + + for (i = 0; i < t_count; i++) { + lex_free_tok(ts[i]); + } + + free(ts); +} + struct token* lex(const char *filename_local, FILE *fin, size_t *len) { filename = filename_local; -- cgit v1.1