From 449cb77c1e07a36dd437a364048c1f3f52330f09 Mon Sep 17 00:00:00 2001 From: BeMacized Date: Sun, 14 Aug 2022 18:31:07 +0200 Subject: [PATCH] Switch from `mem::uninitialized()` to `mem::MaybeUninit::uninit()` in `poll_next_event_with_pose` Fixes panic. --- src/system/mod.rs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/system/mod.rs b/src/system/mod.rs index 108cb86..4a2f097 100644 --- a/src/system/mod.rs +++ b/src/system/mod.rs @@ -123,17 +123,17 @@ impl System { &self, origin: TrackingUniverseOrigin, ) -> Option<(EventInfo, TrackedDevicePose)> { - let mut event = unsafe { mem::uninitialized() }; - let mut pose = unsafe { mem::uninitialized() }; + let mut event = mem::MaybeUninit::uninit(); + let mut pose = mem::MaybeUninit::uninit(); if unsafe { self.0.PollNextEventWithPose.unwrap()( origin as sys::ETrackingUniverseOrigin, - &mut event, + event.as_mut_ptr(), mem::size_of_val(&event) as u32, - &mut pose as *mut _ as *mut _, + pose.as_mut_ptr() as *mut _, ) } { - Some((event.into(), pose)) + unsafe { Some((event.assume_init().into(), pose.assume_init())) } } else { None }