fix svace issue
[platform/core/messaging/msg-service.git] / utils / MsgJsonParser.cpp
index 90f2baf..49d5fdd 100755 (executable)
@@ -44,7 +44,11 @@ msg_json_gen_object* msg_json_gen_new_obj(msg_json_gen_type type)
                new_obj = (msg_json_gen_object *)g_try_malloc0(sizeof(msg_json_gen_object));
 
                if (new_obj == NULL) {
-                       g_object_unref(json_value);
+                       if (type == MSG_JSON_GEN_OBJECT)
+                               g_object_unref(json_value);
+                       else if (type == MSG_JSON_GEN_ARRAY)
+                               g_array_unref((GArray *)json_value);
+
                        return NULL;
                }
 
@@ -61,7 +65,11 @@ void msg_json_gen_free_obj(msg_json_gen_object *obj)
                return;
        }
        if (obj->value != NULL) {
-               g_object_unref(obj->value);
+               if (obj->type == MSG_JSON_GEN_OBJECT)
+                       g_object_unref(obj->value);
+               else if (obj->type == MSG_JSON_GEN_ARRAY)
+                       g_array_unref((GArray *)obj->value);
+
                obj->value = NULL;
        }
        g_free(obj);