diff --git a/src/state.rs b/src/state.rs index 487d50f9..ae366f72 100644 --- a/src/state.rs +++ b/src/state.rs @@ -1006,6 +1006,7 @@ impl State { self.run_toplevel.clear(); self.xwayland.handler.borrow_mut().take(); self.xwayland.queue.clear(); + self.xwayland.windows.clear(); self.idle.inhibitors.clear(); self.idle.change.clear(); for drm_dev in self.drm_devs.lock().drain_values() { diff --git a/src/xwayland.rs b/src/xwayland.rs index 6d6fb1e1..b5a65f48 100644 --- a/src/xwayland.rs +++ b/src/xwayland.rs @@ -203,6 +203,7 @@ async fn run( state.ring.readable(&pidfd).await?; } state.xwayland.queue.clear(); + state.xwayland.windows.clear(); stderr_read.await; Ok(()) }