Jestem nowy w JSON-C, Proszę zobaczyć mój przykładowy kod i daj mi znać, stworzy dowolny wyciek pamięci, jeśli tak, to jak zwolnić obiekt JSON-C.Wyciek pamięci za pomocą JSON-C
struct json_object *new_obj = NULL;
new_obj = json_tokener_parse(strRawJSON);
new_obj = json_object_object_get(new_obj, "FUU");
if(NULL == new_obj){
SYS_OUT("\nFUU not found in JSON");
return NO;
}
new_obj = json_object_object_get(new_obj, "FOO"); // I m re-using new_obj, without free it?
if(NULL == new_obj){
SYS_OUT("\nFOO not found in JSON");
return NO;
}
// DO I need to clean new_obj, if yes then how ??
Czy muszę wyczyścić new_obj, jeśli tak, to w jaki sposób. Czy ktoś może pomóc w zrozumieniu sposobu zarządzania pamięcią JSON-C.
Z góry dziękuję
Szybkie wyszukiwanie w Internecie wydaje się wskazywać, że JSON-C używa licznika odwołań do zarządzania instancjami 'json_object', a funkcja używana do" uwolnienia "instancji to [json_object_put] (http://oss.metaparadigm.com/json- c/doc/html/json__object_8h.html # a15). – hmjd