8000
We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent d4cc01c commit bd9ce3eCopy full SHA for bd9ce3e
library/std/src/sys/pal/unix/os.rs
@@ -738,16 +738,17 @@ pub fn home_dir() -> Option<PathBuf> {
738
n => n as usize,
739
};
740
let mut buf = Vec::with_capacity(amt);
741
- let mut passwd: libc::passwd = mem::zeroed();
+ let mut p = mem::MaybeUninit::<libc::passwd>::uninit();
742
let mut result = ptr::null_mut();
743
match libc::getpwuid_r(
744
libc::getuid(),
745
- &mut passwd,
+ p.as_mut_ptr(),
746
buf.as_mut_ptr(),
747
buf.capacity(),
748
&mut result,
749
) {
750
0 if !result.is_null() => {
751
+ let passwd = p.assume_init();
752
let ptr = passwd.pw_dir as *const _;
753
let bytes = CStr::from_ptr(ptr).to_bytes().to_vec();
754
Some(OsStringExt::from_vec(bytes))
0 commit comments