From 11f20fa8e42164583a0eba4298799c622bdb7811 Mon Sep 17 00:00:00 2001 From: Derek Foreman Date: Tue, 3 Dec 2024 11:32:16 -0600 Subject: [PATCH] drm: Fix underlay test We need to reset the underlay check inside the view evaluation loop, otherwise once we need an underlay we'll treat every following view as needing an underlay. Fixes: 1065d23406 ("backend-drm: Improve plane assignment for underlay platform") Signed-off-by: Derek Foreman (cherry picked from commit 8dbb3e17d0387f46e42423eee9e2b441bedecade) --- libweston/backend-drm/state-propose.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libweston/backend-drm/state-propose.c b/libweston/backend-drm/state-propose.c index 1e62e2b46..2715ab6c3 100644 --- a/libweston/backend-drm/state-propose.c +++ b/libweston/backend-drm/state-propose.c @@ -669,7 +669,6 @@ drm_output_propose_state(struct weston_output *output_base, pixman_region32_t occluded_region; bool renderer_ok = (mode != DRM_OUTPUT_PROPOSE_STATE_PLANES_ONLY); - bool need_underlay = false; int ret; /* Record the current lowest zpos of the overlay planes */ uint64_t current_lowest_zpos_overlay = DRM_PLANE_ZPOS_INVALID_PLANE; @@ -762,6 +761,7 @@ drm_output_propose_state(struct weston_output *output_base, pixman_region32_t clipped_view; pixman_region32_t surface_overlap; bool totally_occluded = false; + bool need_underlay = false; drm_debug(b, "\t\t\t[view] evaluating view %p for " "output %s (%lu)\n",