diff --git a/android-activity/src/game_activity/mod.rs b/android-activity/src/game_activity/mod.rs index f9904d1..c5e6c97 100644 --- a/android-activity/src/game_activity/mod.rs +++ b/android-activity/src/game_activity/mod.rs @@ -768,18 +768,16 @@ impl<'a> From> for InputIteratorInner<'a> { let buffered = unsafe { let app_ptr = receiver.native_app.as_ptr(); let input_buffer = ffi::android_app_swap_input_buffers(app_ptr); - if input_buffer.is_null() { - None - } else { - let buffer = InputBuffer::from_ptr(NonNull::new_unchecked(input_buffer)); + NonNull::new(input_buffer).map(|input_buffer| { + let buffer = InputBuffer::from_ptr(input_buffer); let keys_iter = KeyEventsLendingIterator::new(&buffer); let motion_iter = MotionEventsLendingIterator::new(&buffer); - Some(BufferedEvents::<'a> { + BufferedEvents::<'a> { buffer, keys_iter, motion_iter, - }) - } + } + }) }; let native_app = receiver.native_app.clone(); diff --git a/android-activity/src/lib.rs b/android-activity/src/lib.rs index f38fc67..6095108 100644 --- a/android-activity/src/lib.rs +++ b/android-activity/src/lib.rs @@ -112,6 +112,8 @@ //! [`GameActivity`]: https://developer.android.com/games/agdk/integrate-game-activity //! [Looper]: https://developer.android.com/reference/android/os/Looper +#![deny(clippy::manual_let_else)] + use std::hash::Hash; use std::sync::Arc; use std::sync::RwLock; diff --git a/android-activity/src/native_activity/mod.rs b/android-activity/src/native_activity/mod.rs index 7776e3b..8a95cc0 100644 --- a/android-activity/src/native_activity/mod.rs +++ b/android-activity/src/native_activity/mod.rs @@ -485,11 +485,7 @@ impl<'a> InputIteratorInner<'a> { where F: FnOnce(&input::InputEvent) -> InputStatus, { - // XXX: would use `let Some(queue) = &self.receiver.queue else { return - // false; }` but we're stuck supporting Rust 1.64 for Winit currently - let queue = if let Some(queue) = &self.receiver.queue { - queue - } else { + let Some(queue) = &self.receiver.queue else { log::trace!("no queue available for events"); return false; };