From eaf1e9268304b59981ebee73352cde2a43d0a79f Mon Sep 17 00:00:00 2001 From: Victoria Brekenfeld Date: Mon, 4 May 2026 14:11:03 +0200 Subject: [PATCH] drm/surface: Make sure we also reset `pending` --- src/backend/drm/surface/atomic.rs | 2 ++ src/backend/drm/surface/legacy.rs | 1 + 2 files changed, 3 insertions(+) diff --git a/src/backend/drm/surface/atomic.rs b/src/backend/drm/surface/atomic.rs index 318aa9fef7ee..aed32f227404 100644 --- a/src/backend/drm/surface/atomic.rs +++ b/src/backend/drm/surface/atomic.rs @@ -994,6 +994,7 @@ impl AtomicDrmSurface { if res.is_ok() { self.used_planes.lock().unwrap().clear(); self.state.write().unwrap().clear(); + self.pending.write().unwrap().clear(); } res @@ -1008,6 +1009,7 @@ impl AtomicDrmSurface { } else { State::current_state(&*self.fd, self.crtc, &mut self.prop_mapping.write().unwrap())? }; + *self.pending.write().unwrap() = self.state.read().unwrap().clone(); Ok(()) } diff --git a/src/backend/drm/surface/legacy.rs b/src/backend/drm/surface/legacy.rs index 8184acb6b61f..31b024038244 100644 --- a/src/backend/drm/surface/legacy.rs +++ b/src/backend/drm/surface/legacy.rs @@ -462,6 +462,7 @@ impl LegacyDrmSurface { } else { State::current_state(&*self.fd, self.crtc)? }; + *self.pending.write().unwrap() = self.state.read().unwrap().clone(); Ok(()) }