Skip to content

Commit bfd2228

Browse files
committed
Making types consistent with what libc expects
1 parent b07fc51 commit bfd2228

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

src/sys/resource.rs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
//! Configure the process resource limits.
22
use std::mem;
33

4-
use libc::{self, c_int, rlimit, RLIM_INFINITY};
4+
use libc::{self, c_uint, rlimit, RLIM_INFINITY};
55
pub use libc::rlim_t;
66

77
use {Errno, Result};
88

99
libc_enum!{
1010
/// A resource that limits apply to
11-
#[repr(i32)]
11+
#[repr(u32)]
1212
pub enum Resource {
1313
// POSIX
1414
/// This is the maximum size of the process's virtual memory (address space). The limit is specified in bytes, and is rounded down to the system page size.
@@ -97,8 +97,8 @@ libc_enum!{
9797
///
9898
/// [`Resource`]: enum.Resource.html
9999
pub fn getrlimit(resource: Resource) -> Result<(Option<rlim_t>, Option<rlim_t>)> {
100-
let mut rlim: rlimit = unsafe { mem::uninitialized() };
101-
let res = unsafe { libc::getrlimit(resource as c_int, &mut rlim as *mut _) };
100+
let mut rlim: rlimit = unsafe { mem::MaybeUninit::uninit().assume_init() };
101+
let res = unsafe { libc::getrlimit(resource as c_uint, &mut rlim as *mut _) };
102102
// TODO: use Option::filter after it has been stabilized
103103
Errno::result(res).map(|_| {
104104
(if rlim.rlim_cur != RLIM_INFINITY { Some(rlim.rlim_cur) } else { None },
@@ -133,10 +133,10 @@ pub fn getrlimit(resource: Resource) -> Result<(Option<rlim_t>, Option<rlim_t>)>
133133
///
134134
/// [`Resource`]: enum.Resource.html
135135
pub fn setrlimit(resource: Resource, soft_limit: Option<rlim_t>, hard_limit: Option<rlim_t>) -> Result<()> {
136-
let mut rlim: rlimit = unsafe { mem::uninitialized() };
136+
let mut rlim: rlimit = unsafe { mem::MaybeUninit::uninit().assume_init() };
137137
rlim.rlim_cur = soft_limit.unwrap_or(RLIM_INFINITY);
138138
rlim.rlim_max = hard_limit.unwrap_or(RLIM_INFINITY);
139139

140-
let res = unsafe { libc::setrlimit(resource as c_int, &rlim as *const _) };
140+
let res = unsafe { libc::setrlimit(resource as c_uint, &rlim as *const _) };
141141
Errno::result(res).map(|_| ())
142142
}

0 commit comments

Comments
 (0)