diff options
author | Minkyu Kang <mk7.kang@samsung.com> | 2015-08-10 17:16:06 +0900 |
---|---|---|
committer | Minkyu Kang <mk7.kang@samsung.com> | 2015-08-10 17:16:06 +0900 |
commit | c7917b8b13177f7fe39bd3106799fb8ac132300a (patch) | |
tree | b41e6dd989d9f5767da742d3088a866b9d1f2de3 /src/view/viewer.c | |
parent | 2b86ec161a73b2df9446095211f6e148185e950c (diff) | |
download | air_mediahub-c7917b8b13177f7fe39bd3106799fb8ac132300a.tar.gz air_mediahub-c7917b8b13177f7fe39bd3106799fb8ac132300a.tar.bz2 air_mediahub-c7917b8b13177f7fe39bd3106799fb8ac132300a.zip |
fix memory leak
Change-Id: I810e85f9d548212f6bf7c12d165b06ce66473741
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
Diffstat (limited to 'src/view/viewer.c')
-rw-r--r-- | src/view/viewer.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/view/viewer.c b/src/view/viewer.c index 3c812a2..276f9ee 100644 --- a/src/view/viewer.c +++ b/src/view/viewer.c @@ -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) |