aboutsummaryrefslogtreecommitdiff
path: root/src/dump.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/dump.c')
-rw-r--r--src/dump.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/dump.c b/src/dump.c
index dad64f8..1ab1140 100644
--- a/src/dump.c
+++ b/src/dump.c
@@ -242,11 +242,15 @@ char *json_dumps(const json_t *json, unsigned long flags)
if(strbuffer_init(&strbuff))
return NULL;
- if(do_dump(json, flags, 0, dump_to_strbuffer, (void *)&strbuff))
+ if(do_dump(json, flags, 0, dump_to_strbuffer, (void *)&strbuff)) {
+ strbuffer_close(&strbuff);
return NULL;
+ }
- if(dump_to_strbuffer("\n", 1, (void *)&strbuff))
+ if(dump_to_strbuffer("\n", 1, (void *)&strbuff)) {
+ strbuffer_close(&strbuff);
return NULL;
+ }
result = strdup(strbuffer_value(&strbuff));
strbuffer_close(&strbuff);