e_desk: check code whether ec is deleted in e_desk_geometry_set 92/287792/1
authorDoyoun Kang <doyoun.kang@samsung.com>
Mon, 6 Feb 2023 07:23:02 +0000 (16:23 +0900)
committerDoyoun Kang <doyoun.kang@samsung.com>
Mon, 6 Feb 2023 09:09:29 +0000 (09:09 +0000)
Change-Id: I262d85056fe9a44de5f84626e055daafb906df33

src/bin/e_desk.c

index 372b2e22f91ccda97853935757dcceffbde7ff41..5545a7e5bdc983ecfb343902301d1b319c2fa08d 100644 (file)
@@ -872,6 +872,8 @@ e_desk_geometry_set(E_Desk *desk, int x, int y, int w, int h)
 
    EINA_LIST_FOREACH(sd->clients, l, ec)
      {
+        if (e_object_is_del(E_OBJECT(ec))) continue;
+
         /* even if the desktop geometry is chagned, the system partial windows such as virtual
          * keyboard and clipboard should be placed at the bottom of the desktop. */
         /* QUICK FIX */
@@ -903,6 +905,7 @@ e_desk_geometry_set(E_Desk *desk, int x, int y, int w, int h)
         ec = evas_object_data_get(m, "E_Client");
         if (ec && ec->maximized)
           {
+             if (e_object_is_del(E_OBJECT(ec))) continue;
              max = ec->maximized;
              ec->maximized = E_MAXIMIZE_NONE;
              e_client_maximize(ec, max);