fix svace issue 16/113516/1 accepted/tizen/common/20170208.155130 accepted/tizen/ivi/20170208.104154 accepted/tizen/mobile/20170208.104121 accepted/tizen/wearable/20170208.104136 submit/tizen/20170208.080754
authorKyeonghun Lee <kh9090.lee@samsung.com>
Wed, 8 Feb 2017 04:43:38 +0000 (13:43 +0900)
committerKyeonghun Lee <kh9090.lee@samsung.com>
Wed, 8 Feb 2017 04:45:38 +0000 (20:45 -0800)
Change-Id: Ib211a511d3eb6bebb0165e1206821f28dc090e8c
Signed-off-by: Kyeonghun Lee <kh9090.lee@samsung.com>
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);