Skip to content

Commit 0233cdc

Browse files
perf: use MaybeUninit for libc buffers
1 parent 88c9ff5 commit 0233cdc

File tree

1 file changed

+5
-5
lines changed

1 file changed

+5
-5
lines changed

src/uptime.rs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
use std::io;
1+
use std::{io, mem::MaybeUninit};
22

33
pub fn get_current() -> Result<String, io::Error> {
4-
let uptime_seconds = unsafe {
5-
let mut info: libc::sysinfo = std::mem::zeroed();
6-
if libc::sysinfo(&mut info) != 0 {
4+
let uptime_seconds = {
5+
let mut info = MaybeUninit::uninit();
6+
if unsafe { libc::sysinfo(info.as_mut_ptr()) } != 0 {
77
return Err(io::Error::last_os_error());
88
}
9-
info.uptime as u64
9+
unsafe { info.assume_init().uptime as u64 }
1010
};
1111

1212
let days = uptime_seconds / 86400;

0 commit comments

Comments
 (0)