Fix prevent issues
[apps/core/preloaded/settings.git] / setting-display / src / setting-display-wallpaper.c
index 010ec90..df03f38 100755 (executable)
@@ -235,14 +235,17 @@ static void __setting_display_wallpaper_gallery_ug_result_cb(ui_gadget_h ug, ser
                }
 
                struct ug_cbs *cbs = (struct ug_cbs *)calloc(1, sizeof(struct ug_cbs));
-               setting_retm_if(cbs == NULL, "calloc failed");
+               if (!cbs) {
+                       service_destroy(service);
+                       return;
+               }
 
                cbs->layout_cb = setting_display_layout_ug_cb;
                cbs->result_cb = __setting_display_wallpaper_imageviewer_ug_result_cb;
                cbs->destroy_cb = __setting_display_wallpaper_imageviewer_ug_destroy_cb;
                cbs->priv = (void *)ad;
 
-               ad->ug_imageviewer = ug_create(ad->ug_gallery, "image-viewer-efl", UG_MODE_FULLVIEW, service, cbs);
+               ad->ug_imageviewer = ug_create(ad->ug, "image-viewer-efl", UG_MODE_FULLVIEW, service, cbs);
 
                if (NULL == ad->ug_imageviewer) {       /* error handling */
                        SETTING_TRACE_ERROR("NULL == ad->ug_imageviewer");
@@ -348,27 +351,20 @@ static int setting_display_wallpaper_create(void *cb)
        SettingDisplayUG *ad = (SettingDisplayUG *) cb; /* ad is point to cb */
        ad->cur_sel = WALLPAPER_CUR_SEL_NONE;
 
-       Evas_Object *view_layout = elm_layout_add(ad->win_main_layout);
-       elm_layout_file_set(view_layout, SETTING_THEME_EDJ_NAME, "selinfo_bottom");
-       evas_object_size_hint_weight_set(view_layout, EVAS_HINT_EXPAND, 0.0);
-       ad->view_layout = view_layout;
-
        Evas_Object *controllbar = NULL;
        Evas_Object *scroller = NULL;
+       scroller = elm_genlist_add(ad->win_main_layout);
+       elm_object_style_set(scroller, "dialogue");
+       retvm_if(scroller == NULL, SETTING_RETURN_FAIL, "Cannot set scroller object as contento of layout");
+       elm_genlist_clear(scroller);    /* first to clear list */
 
        ad->ly_wall = setting_create_layout_navi_bar(ad->win_main_layout, ad->win_get,
                                           _(KeyStr_Wallpaper),
                                           _("IDS_COM_BODY_BACK"), NULL, NULL,
                                           setting_display_wallpaper_click_softkey_cancel_cb,
-                                          NULL, NULL, ad, view_layout,
+                                          NULL, NULL, ad, scroller,
                                           &ad->navi_bar, &controllbar);
 
-       scroller = elm_genlist_add(ad->navi_bar);
-       elm_object_style_set(scroller, "dialogue");
-       retvm_if(scroller == NULL, SETTING_RETURN_FAIL, "Cannot set scroller object as contento of layout");
-       elm_genlist_clear(scroller);    /* first to clear list */
-       elm_object_part_content_set(view_layout, "elm.swallow.contents", scroller);
-
        Elm_Object_Item *item = NULL;
        item = elm_genlist_item_append(scroller, &(ad->itc_seperator), NULL, NULL,
                                ELM_GENLIST_ITEM_NONE, NULL, NULL);