test_dtsod() improved and memory leaks fixed

This commit is contained in:
2022-03-09 18:47:13 +03:00
parent 8819853e15
commit 3c1d92d79a
8 changed files with 56 additions and 33 deletions

View File

@@ -86,7 +86,11 @@ Hashtable* __deserialize(char** _text, bool calledRecursively){
Autoarr_remove(b);
StringBuilder_append_char(b,c);
}
else return StringBuilder_build(b);
else {
char* str=StringBuilder_build(b);
Autoarr_clear(b);
return str;
}
}
else {
prevIsBackslash= c=='\\' && !prevIsBackslash;

View File

@@ -84,5 +84,7 @@ void __serialize(StringBuilder* b, uint8 tabs, Hashtable* dtsod){
char* DtsodV24_serialize(Hashtable* dtsod){
StringBuilder b=StringBuilder_create(STRB_BC,STRB_BL);
__serialize(&b,0,dtsod);
return StringBuilder_build(&b);
char* str=StringBuilder_build(&b);
Autoarr_clear((&b));
return str;
}