From 68a629d79a36fe59894ace00c5c54fe6649ce74c Mon Sep 17 00:00:00 2001 From: Ivan Molodetskikh Date: Tue, 18 Jun 2024 10:35:49 +0300 Subject: [PATCH] Fix new Clippy warnings --- anvil/src/shell/grabs.rs | 24 ++++-------------------- benches/geometry.rs | 6 +----- src/backend/drm/surface/atomic.rs | 4 ++-- src/wayland/shm/pool.rs | 2 ++ src/xwayland/xwm/mod.rs | 2 +- 5 files changed, 10 insertions(+), 28 deletions(-) diff --git a/anvil/src/shell/grabs.rs b/anvil/src/shell/grabs.rs index 19efe29249..ab224b59aa 100644 --- a/anvil/src/shell/grabs.rs +++ b/anvil/src/shell/grabs.rs @@ -400,16 +400,8 @@ impl PointerGrab> for PointerResiz let min_width = min_size.w.max(1); let min_height = min_size.h.max(1); - let max_width = if max_size.w == 0 { - i32::max_value() - } else { - max_size.w - }; - let max_height = if max_size.h == 0 { - i32::max_value() - } else { - max_size.h - }; + let max_width = if max_size.w == 0 { i32::MAX } else { max_size.w }; + let max_height = if max_size.h == 0 { i32::MAX } else { max_size.h }; new_window_width = new_window_width.max(min_width).min(max_width); new_window_height = new_window_height.max(min_height).min(max_height); @@ -804,16 +796,8 @@ impl TouchGrab> for TouchResizeSur let min_width = min_size.w.max(1); let min_height = min_size.h.max(1); - let max_width = if max_size.w == 0 { - i32::max_value() - } else { - max_size.w - }; - let max_height = if max_size.h == 0 { - i32::max_value() - } else { - max_size.h - }; + let max_width = if max_size.w == 0 { i32::MAX } else { max_size.w }; + let max_height = if max_size.h == 0 { i32::MAX } else { max_size.h }; new_window_width = new_window_width.max(min_width).min(max_width); new_window_height = new_window_height.max(min_height).min(max_height); diff --git a/benches/geometry.rs b/benches/geometry.rs index a0ad3b9622..9aa34f4939 100644 --- a/benches/geometry.rs +++ b/benches/geometry.rs @@ -2,10 +2,7 @@ use criterion::{criterion_group, criterion_main, Criterion}; use rand::Rng; use smithay::utils::{Physical, Rectangle, Size}; -fn element_visible_size( - test_element: Rectangle, - opaque_regions: &Vec>, -) { +fn element_visible_size(test_element: Rectangle, opaque_regions: &[Rectangle]) { let mut workhouse = Vec::with_capacity(2048 * 4); workhouse.push(test_element); workhouse = Rectangle::subtract_rects_many_in_place(workhouse, opaque_regions.iter().copied()); @@ -35,7 +32,6 @@ fn criterion_benchmark(c: &mut Criterion) { // let y_max = stage.h - element_size.h; let opaque_regions = (0..2048) - .into_iter() .map(|_| { let x = rand.gen_range(x_min..=x_max); let y = rand.gen_range(y_min..=y_max); diff --git a/src/backend/drm/surface/atomic.rs b/src/backend/drm/surface/atomic.rs index de4b50054e..c4d0976d30 100644 --- a/src/backend/drm/surface/atomic.rs +++ b/src/backend/drm/surface/atomic.rs @@ -422,7 +422,7 @@ impl AtomicDrmSurface { return Err(Error::DeviceInactive); } - let current = self.state.write().unwrap(); + let current = self.state.read().unwrap(); let mut pending = self.pending.write().unwrap(); self.ensure_props_known(connectors)?; @@ -578,7 +578,7 @@ impl AtomicDrmSurface { let planes = planes.into_iter().collect::>(); let mut current = self.state.write().unwrap(); let mut used_planes = self.used_planes.lock().unwrap(); - let pending = self.pending.write().unwrap(); + let pending = self.pending.read().unwrap(); debug!(current = ?*current, pending = ?*pending, ?planes, "Preparing Commit",); diff --git a/src/wayland/shm/pool.rs b/src/wayland/shm/pool.rs index 117b6866e4..9aeef8d87d 100644 --- a/src/wayland/shm/pool.rs +++ b/src/wayland/shm/pool.rs @@ -150,6 +150,8 @@ impl InnerPool { place_sigbus_handler(); }); + // This is actually a write access. + #[allow(clippy::readonly_write_lock)] let pool_guard = self.map.write().unwrap(); trace!(fd = ?self.fd, "Mutable buffer access on shm pool"); diff --git a/src/xwayland/xwm/mod.rs b/src/xwayland/xwm/mod.rs index 14297b0acf..f47f10ffa4 100644 --- a/src/xwayland/xwm/mod.rs +++ b/src/xwayland/xwm/mod.rs @@ -1259,7 +1259,7 @@ where // "to_ignore <= seqno". This is equivalent to "to_ignore - seqno <= 0", which is what we // check instead. Since sequence numbers are unsigned, we need a trick: We decide // that values from [MAX/2, MAX] count as "<= 0" and the rest doesn't. - if to_ignore.wrapping_sub(seqno) <= u16::max_value() / 2 { + if to_ignore.wrapping_sub(seqno) <= u16::MAX / 2 { // If the two sequence numbers are equal, this event should be ignored. should_ignore = to_ignore == seqno; break;