tty: Relax device checks on removal

This commit is contained in:
Ivan Molodetskikh
2024-05-15 08:14:09 +04:00
parent 3d63f5e644
commit b87fba2182
+5 -2
View File
@@ -644,7 +644,7 @@ impl Tty {
lease_state.disable_global::<State>();
}
if node == self.primary_node {
if node == self.primary_node || device.render_node == self.primary_render_node {
match self.gpu_manager.single_renderer(&device.render_node) {
Ok(mut renderer) => renderer.unbind_wl_display(),
Err(err) => {
@@ -653,7 +653,7 @@ impl Tty {
}
// Disable and destroy the dmabuf global.
let global = self.dmabuf_global.take().unwrap();
if let Some(global) = self.dmabuf_global.take() {
niri.dmabuf_state
.disable_global::<State>(&niri.display_handle, &global);
niri.event_loop
@@ -675,6 +675,9 @@ impl Tty {
surface.dmabuf_feedback = None;
}
}
} else {
error!("dmabuf global was already missing");
}
}
self.gpu_manager.as_mut().remove_node(&device.render_node);