diff --git a/src/modsecurity.cc b/src/modsecurity.cc index 3de9b32f..2a13489f 100644 --- a/src/modsecurity.cc +++ b/src/modsecurity.cc @@ -415,9 +415,8 @@ int ModSecurity::processContentOffset(const char *content, size_t len, yajl_gen_map_close(g); - yajl_gen_array_close(g); - yajl_gen_map_close(g); + yajl_gen_array_close(g); yajl_gen_map_close(g); @@ -426,6 +425,7 @@ int ModSecurity::processContentOffset(const char *content, size_t len, json->assign(reinterpret_cast(buf), jsonSize); json->append("\n"); + yajl_gen_clear(g); yajl_gen_free(g); #else *err = strdup("Without YAJL support, we cannot generate JSON.");