fix memory leak 64/45664/1
authorMinkyu Kang <mk7.kang@samsung.com>
Mon, 10 Aug 2015 08:16:06 +0000 (17:16 +0900)
committerMinkyu Kang <mk7.kang@samsung.com>
Mon, 10 Aug 2015 08:16:06 +0000 (17:16 +0900)
Change-Id: I810e85f9d548212f6bf7c12d165b06ce66473741
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
src/view/mplayer.c
src/view/viewer.c

index 7c5ac35..4157b32 100644 (file)
@@ -766,8 +766,7 @@ static Evas_Object *_create(Evas_Object *win, void *data)
        base = elm_layout_add(win);
        if (!base) {
                _ERR("failed to create base object");
-               free(priv);
-               return NULL;
+               goto err;
        }
 
        elm_layout_file_set(base, EDJEFILE, GRP_MPLAYER_VIEW);
@@ -785,14 +784,14 @@ static Evas_Object *_create(Evas_Object *win, void *data)
        player = playermgr_create(NULL);
        if (!player) {
                _ERR("failed to create player");
-               return NULL;
+               goto err;
        }
 
        r = playermgr_set_completed_cb(player, _player_complete_cb, priv);
        if (!r) {
                _ERR("failed to set callback");
                playermgr_destroy(player);
-               return NULL;
+               goto err;
        }
 
        priv->player = player;
@@ -801,12 +800,16 @@ static Evas_Object *_create(Evas_Object *win, void *data)
        if (!r) {
                _ERR("failed to init UI");
                playermgr_destroy(player);
-               return NULL;
+               goto err;
        }
 
        viewmgr_set_view_data(VIEW_MPLAYER, priv);
 
        return base;
+
+err:
+       free(priv);
+       return NULL;
 }
 
 static void _show(void *view_data)
index 3c812a2..276f9ee 100644 (file)
@@ -895,8 +895,7 @@ static Evas_Object *_create(Evas_Object *win, void *data)
        base = elm_layout_add(win);
        if (!base) {
                _ERR("failed to create base object");
-               free(priv);
-               return NULL;
+               goto err;
        }
 
        elm_layout_file_set(base, EDJEFILE, GRP_VIEWER_VIEW);
@@ -915,14 +914,14 @@ static Evas_Object *_create(Evas_Object *win, void *data)
        player = playermgr_create(win);
        if (!player) {
                _ERR("failed to create player");
-               return NULL;
+               goto err;
        }
 
        r = playermgr_set_completed_cb(player, _player_complete_cb, priv);
        if (!r) {
                _ERR("failed to set callback");
                playermgr_destroy(player);
-               return NULL;
+               goto err;
        }
 
        priv->player = player;
@@ -931,12 +930,16 @@ static Evas_Object *_create(Evas_Object *win, void *data)
        if (!r) {
                _ERR("failed to init UI");
                playermgr_destroy(player);
-               return NULL;
+               goto err;
        }
 
        viewmgr_set_view_data(VIEW_VIEWER, priv);
 
        return base;
+
+err:
+       free(priv);
+       return NULL;
 }
 
 static void _show(void *view_data)