From 570bf1cb3c1f9ffc847359009c6061e062c72871 Mon Sep 17 00:00:00 2001 From: Christian Meissl Date: Fri, 5 Jul 2024 21:49:08 +0200 Subject: bump smithay --- src/render_helpers/renderer.rs | 4 ++-- src/render_helpers/surface.rs | 12 +++++------- 2 files changed, 7 insertions(+), 9 deletions(-) (limited to 'src/render_helpers') diff --git a/src/render_helpers/renderer.rs b/src/render_helpers/renderer.rs index 5c483182..f4872738 100644 --- a/src/render_helpers/renderer.rs +++ b/src/render_helpers/renderer.rs @@ -17,7 +17,7 @@ pub trait NiriRenderer: + AsGlesRenderer { // Associated types to work around the instability of associated type bounds. - type NiriTextureId: Texture + Clone + 'static; + type NiriTextureId: Texture + Clone + Send + 'static; type NiriError: std::error::Error + Send + Sync @@ -28,7 +28,7 @@ pub trait NiriRenderer: impl NiriRenderer for R where R: ImportAll + ImportMem + ExportMem + Bind + Offscreen + AsGlesRenderer, - R::TextureId: Texture + Clone + 'static, + R::TextureId: Texture + Clone + Send + 'static, R::Error: std::error::Error + Send + Sync + From<::Error> + 'static, { type NiriTextureId = R::TextureId; diff --git a/src/render_helpers/surface.rs b/src/render_helpers/surface.rs index 93738673..96065923 100644 --- a/src/render_helpers/surface.rs +++ b/src/render_helpers/surface.rs @@ -25,7 +25,7 @@ pub fn render_snapshot_from_surface_tree( let data = states.data_map.get::(); if let Some(data) = data { - let data = &*data.borrow(); + let data = &*data.lock().unwrap(); if let Some(view) = data.view() { location += view.offset.to_f64(); @@ -42,19 +42,17 @@ pub fn render_snapshot_from_surface_tree( let data = states.data_map.get::(); if let Some(data) = data { - if let Some(view) = data.borrow().view() { - location += view.offset.to_f64(); - } else { + let Some(view) = data.lock().unwrap().view() else { return; - } + }; + location += view.offset.to_f64(); if let Err(err) = import_surface(renderer, states) { warn!("failed to import surface: {err:?}"); return; } - let data = data.borrow(); - let view = data.view().unwrap(); + let data = data.lock().unwrap(); let Some(texture) = data.texture::(renderer.id()) else { return; }; -- cgit