e_service_region: destroy the e_view destroy listener 45/322745/1
authorSooChan Lim <sc1.lim@samsung.com>
Tue, 15 Apr 2025 07:08:24 +0000 (16:08 +0900)
committerTizen Window System <tizen.windowsystem@gmail.com>
Tue, 15 Apr 2025 09:09:52 +0000 (18:09 +0900)
it has to be destroyed.

Change-Id: I98aee6fef036b27681d1040e352b74b740dc97fa

src/bin/windowmgr/services/e_service_region.c

index d41078bfccbf674b3bf0e3b01faa2c56c0ec8bcc..743cea910f027c23ae22fbd79086fdd5256eb150 100644 (file)
@@ -99,10 +99,20 @@ _region_rotation_init(E_Policy_Region *region)
 static void
 _region_free(E_Policy_Region *region)
 {
+   E_View *view;
+
    INF("Free Instant");
+
    E_FREE_LIST(region->event_list, ecore_event_handler_del);
    E_FREE_FUNC(region->gesture, e_service_gesture_del);
-   if (region->obj) e_view_destroy(e_view_rect_view_get(region->obj));
+
+   if (region->obj)
+     {
+        view = e_view_rect_view_get(region->obj);
+        e_view_event_listener_del(view, E_VIEW_DESTROY, &region->destroy_listener);
+        e_view_destroy(view);
+     }
+
    E_FREE(region);
 }