surface: Finalize pending state on commit 64/304864/1
authorSeunghun Lee <shiin.lee@samsung.com>
Mon, 15 Jan 2024 09:16:15 +0000 (18:16 +0900)
committerTizen Window System <tizen.windowsystem@gmail.com>
Thu, 25 Jan 2024 02:49:56 +0000 (11:49 +0900)
The function, surface_finalize_pending() was missing for subsurfaces and
this patch addresses that issue. All surfaces have their pending states
properly finalized during the commit process.

Change-Id: Ieaa5c3bcfb5cc4563ab9ac06da70bc4bf0c4b05b

src/compositor/surface.c

index 8b8a135..62d7be1 100644 (file)
@@ -372,8 +372,6 @@ surface_commit_state(struct ds_surface *surface, struct ds_surface_state *next)
 {
     struct ds_subsurface *subsurface;
 
-    surface_finalize_pending(surface);
-
     surface->sx += next->dx;
     surface->sy += next->dy;
     surface_update_damage(&surface->buffer_damage, &surface->current, next);
@@ -596,6 +594,8 @@ surface_handle_commit(struct wl_client *client, struct wl_resource *resource)
 
     ds_dbg("ds_surface(%p) commit", surface);
 
+    surface_finalize_pending(surface);
+
     subsurface = ds_subsurface_from_surface(surface);
     if (subsurface) {
         subsurface_commit(subsurface);