From 2e8ce30235a5ce12c4819e393559be9279394dd6 Mon Sep 17 00:00:00 2001 From: cactter Date: Thu, 21 Jul 2022 22:47:40 +0800 Subject: [PATCH] Shrink unsafe block --- src/timer/windows_timer.rs | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/src/timer/windows_timer.rs b/src/timer/windows_timer.rs index 4e8bcf4..0cf2b5d 100644 --- a/src/timer/windows_timer.rs +++ b/src/timer/windows_timer.rs @@ -34,18 +34,20 @@ impl CPUTimer { /// Read CPU execution times fn get_cpu_times(handle: RawHandle) -> CPUTimes { - let (user_usec, system_usec) = unsafe { - let mut _ctime = mem::zeroed(); - let mut _etime = mem::zeroed(); - let mut kernel_time = mem::zeroed(); - let mut user_time = mem::zeroed(); - let res = GetProcessTimes( - handle as HANDLE, - &mut _ctime, - &mut _etime, - &mut kernel_time, - &mut user_time, - ); + let (user_usec, system_usec) = { + let mut _ctime = unsafe { mem::zeroed() }; + let mut _etime = unsafe { mem::zeroed() }; + let mut kernel_time = unsafe { mem::zeroed() }; + let mut user_time = unsafe { mem::zeroed() }; + let res = unsafe { + GetProcessTimes( + handle as HANDLE, + &mut _ctime, + &mut _etime, + &mut kernel_time, + &mut user_time, + ) + }; // GetProcessTimes will exit with non-zero if success as per: https://msdn.microsoft.com/en-us/library/windows/desktop/ms683223(v=vs.85).aspx if res != 0 {