diff options
author | John MacFarlane <jgm@berkeley.edu> | 2015-05-04 09:53:03 -0700 |
---|---|---|
committer | John MacFarlane <jgm@berkeley.edu> | 2015-05-04 09:53:03 -0700 |
commit | f1035464022a8a4e804f5915e6a1388ea49e3fb3 (patch) | |
tree | cc3e3b14f1d7ff11c6eabb5766484762ecb504f3 | |
parent | d12c040d58d70555cc98e397e05ab0d8326b6aca (diff) |
Straightforward fix for memory leak #32.
-rw-r--r-- | src/iterator.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/iterator.c b/src/iterator.c index c6faf99..8ed0cc4 100644 --- a/src/iterator.c +++ b/src/iterator.c @@ -121,6 +121,7 @@ void cmark_consolidate_text_nodes(cmark_node *root) cmark_strbuf buf = GH_BUF_INIT; cmark_event_type ev_type; cmark_node *cur, *tmp, *next; + char *detached; while ((ev_type = cmark_iter_next(iter)) != CMARK_EVENT_DONE) { cur = cmark_iter_get_node(iter); @@ -138,7 +139,9 @@ void cmark_consolidate_text_nodes(cmark_node *root) cmark_node_free(tmp); tmp = next; } - cmark_node_set_literal(cur, (char *)cmark_strbuf_detach(&buf)); + detached = (char *)cmark_strbuf_detach(&buf); + cmark_node_set_literal(cur, detached); + free(detached); } } |