diff --git a/libc3/buf_parse.c b/libc3/buf_parse.c
index f86de4d..0c5f035 100644
--- a/libc3/buf_parse.c
+++ b/libc3/buf_parse.c
@@ -71,6 +71,7 @@ sw buf_parse_array (s_buf *buf, s_array *dest)
r = result;
goto clean;
restore:
+ array_clean(&tmp);
buf_save_restore_rpos(buf, &save);
clean:
buf_save_clean(buf, &save);