diff --git a/examples/base64_sem1.c b/examples/base64_sem1.c index afbbef841cc0ef0593e68a1ca7101eacc976f474..7127d1eb4738c450fba5d3a9b8ab1fa3ac32496a 100644 --- a/examples/base64_sem1.c +++ b/examples/base64_sem1.c @@ -149,12 +149,13 @@ HParser *init_parser(void) #include <stdio.h> +const HParser *parser; // Allocated statically to suppress leak warnings + int main(int argc, char **argv) { uint8_t input[102400]; size_t inputsize; - const HParser *parser; - const HParseResult *result; + HParseResult *result; parser = init_parser(); @@ -166,6 +167,7 @@ int main(int argc, char **argv) if(result) { fprintf(stderr, "parsed=%" PRId64 " bytes\n", result->bit_length/8); h_pprint(stdout, result->ast, 0, 0); + h_parse_result_free(result); return 0; } else { return 1; diff --git a/examples/base64_sem2.c b/examples/base64_sem2.c index b8f7b4a20312dcf39695ba52cdcf9573376d6c69..dac7e7ab0021198b76849da2bfe86af8864a9e9d 100644 --- a/examples/base64_sem2.c +++ b/examples/base64_sem2.c @@ -153,12 +153,13 @@ const HParser *init_parser(void) #include <stdio.h> +const HParser *parser; // Allocated statically to suppress leak warnings + int main(int argc, char **argv) { uint8_t input[102400]; size_t inputsize; - const HParser *parser; - const HParseResult *result; + HParseResult *result; parser = init_parser(); @@ -170,6 +171,7 @@ int main(int argc, char **argv) if(result) { fprintf(stderr, "parsed=%" PRId64 " bytes\n", result->bit_length/8); h_pprint(stdout, result->ast, 0, 0); + h_parse_result_free(result); return 0; } else { return 1;