From 8af2bf809a5090649c1565bfdccecd9d763b7f0e Mon Sep 17 00:00:00 2001
From: Kragen <kragen@canonical.org>
Date: Thu, 17 Oct 2019 01:20:48 -0300
Subject: [PATCH] Fix segfault in base64 example with DEBUG

It was trying to dump the parse tree even when it was NULL due to parse
failure.  This was particularly a problem since earlier in the file it
---
 examples/base64.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/examples/base64.c b/examples/base64.c
index 17264da9..c3e6e032 100644
--- a/examples/base64.c
+++ b/examples/base64.c
@@ -63,8 +63,10 @@ void assert_parse(int expected, char *data) {
 #ifdef DEBUG
     else {
         fprintf(stderr, "Test succeeded: %s\n", data);
-        fprintf(stderr, "parsed=%" PRId64 " bytes\n", result->bit_length/8);
-        h_pprint(stdout, result->ast, 0, 0);
+        if(result != NULL) {
+            fprintf(stderr, "parsed=%" PRId64 " bytes\n", result->bit_length/8);
+            h_pprint(stdout, result->ast, 0, 0);
+        }
     }
 #endif
 }
-- 
GitLab