Commit Diff


commit - e834972f201feb8a446833d32a75ae877c19d935
commit + 70afc8d42ff0d8e61236c77fd36e33d1df8641cd
blob - 4e45c652434cb4ffda798cc764d23dcb0fc2bf1d
blob + c72f9c017b8a07f9bd7ddf1abce07af8791ab481
--- parser.c
+++ parser.c
@@ -77,6 +77,10 @@ parser_free(struct tab *tab)
 			    p->parseline);
 	}
 
+	free(p->buf);
+	p->buf = NULL;
+	p->len = 0;
+
 	if (*p->title != '\0')
 		return r;
 
blob - bbec8913bcd5b600485f55b4caa29c553af7d851
blob + 715827e7ab3aa47e8a2696784fd235b56eef4c20
--- parser_gemtext.c
+++ parser_gemtext.c
@@ -402,8 +402,6 @@ gemtext_free(struct parser *p)
 		    !emit_line(p, LINE_PRE_END, NULL, NULL))
 			return 0;
 	}
-
-	free(p->buf);
 
 	/*
 	 * use the first level 2 or 3 header as page title if none