efl_ui_win: delete ecore_evas when inlined image window is deleted 73/266073/3 accepted/tizen/unified/20211109.042919 submit/tizen/20211108.084528
authorHosang Kim <hosang12.kim@samsung.com>
Fri, 5 Nov 2021 07:02:35 +0000 (16:02 +0900)
committerkim hosang <hosang12.kim@samsung.com>
Mon, 8 Nov 2021 05:36:17 +0000 (05:36 +0000)
When inlined image window is deleted, associated image object and ecore
evas are not deleted. So there is memory leak.

@tizen_only

Change-Id: Iab248b0cf0bfe3f3a9f81a8eb8604a68218be232

src/lib/elementary/efl_ui_win.c

index 2e91df3..ac14f70 100644 (file)
@@ -3714,16 +3714,16 @@ _efl_ui_win_efl_canvas_group_group_del(Eo *obj, Efl_Ui_Win_Data *sd)
         _elm_win_img_callbacks_del(obj, sd->img_obj);
         sd->img_obj = NULL;
      }
-   else
+
+   //TIZEN_ONLY(20211108): delete ecore_evas when inlined image window is deleted
+   if (sd->ee && (sd->type != EFL_UI_WIN_TYPE_FAKE))
      {
-        if (sd->ee && (sd->type != EFL_UI_WIN_TYPE_FAKE))
-          {
-             ecore_evas_manual_render_set(sd->ee, EINA_TRUE);
-             edje_object_freeze(sd->frame_obj);
-             ecore_job_add(_deferred_ecore_evas_free, sd->ee);
-             _elm_win_deferred_free++;
-          }
+        ecore_evas_manual_render_set(sd->ee, EINA_TRUE);
+        edje_object_freeze(sd->frame_obj);
+        ecore_job_add(_deferred_ecore_evas_free, sd->ee);
+        _elm_win_deferred_free++;
      }
+   //
 
    _elm_win_focus_highlight_shutdown(sd);
    // TIZEN_ONLY(20171114) Accessibility Highlight Frame added