[mutter] wayland/surface: Do not free placement ops of cached state



commit 2ef6490323d143e99af2091f635c70aeded7c1d4
Author: Robert Mader <robert mader posteo de>
Date:   Sun Mar 14 02:08:03 2021 +0100

    wayland/surface: Do not free placement ops of cached state
    
    The list gets freed in `meta_wayland_surface_state_clear()`
    if the pointer is still set.
    
    Fixes ba8499f9ec0ca017f11bcc8e50e66302b2f73aa7
    
    Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1783>

 src/wayland/meta-wayland-surface.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
---
diff --git a/src/wayland/meta-wayland-surface.c b/src/wayland/meta-wayland-surface.c
index 465b67619d..8dbf3a7505 100644
--- a/src/wayland/meta-wayland-surface.c
+++ b/src/wayland/meta-wayland-surface.c
@@ -625,12 +625,13 @@ meta_wayland_surface_state_merge_into (MetaWaylandSurfaceState *from,
           to->subsurface_placement_ops =
             g_slist_concat (to->subsurface_placement_ops,
                             from->subsurface_placement_ops);
-          from->subsurface_placement_ops = NULL;
         }
       else
         {
           to->subsurface_placement_ops = from->subsurface_placement_ops;
         }
+
+      from->subsurface_placement_ops = NULL;
     }
 
   wl_list_insert_list (&to->presentation_feedback_list,


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]