Skip to content

Commit 85888c5

Browse files
committed
Vec::spare_capacity_mut is stabilized
1 parent 56e816c commit 85888c5

File tree

1 file changed

+2
-12
lines changed

1 file changed

+2
-12
lines changed

stdlib/src/socket.rs

Lines changed: 2 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -682,7 +682,7 @@ mod _socket {
682682
let mut buffer = Vec::with_capacity(bufsize);
683683
let sock = self.sock(vm)?;
684684
let n = self.sock_op(vm, SelectKind::Read, || {
685-
sock.recv_with_flags(spare_capacity_mut(&mut buffer), flags)
685+
sock.recv_with_flags(buffer.spare_capacity_mut(), flags)
686686
})?;
687687
unsafe { buffer.set_len(n) };
688688
Ok(buffer)
@@ -718,7 +718,7 @@ mod _socket {
718718
let mut buffer = Vec::with_capacity(bufsize);
719719
let (n, addr) = self.sock_op(vm, SelectKind::Read, || {
720720
self.sock_io()?
721-
.recv_from_with_flags(spare_capacity_mut(&mut buffer), flags)
721+
.recv_from_with_flags(buffer.spare_capacity_mut(), flags)
722722
})?;
723723
unsafe { buffer.set_len(n) };
724724
Ok((buffer, get_addr_tuple(&addr, vm)))
@@ -1205,16 +1205,6 @@ mod _socket {
12051205
Ok(s.to_string_lossy().into_owned())
12061206
}
12071207

1208-
// TODO: use `Vec::spare_capacity_mut` once stable.
1209-
fn spare_capacity_mut<T>(v: &mut Vec<T>) -> &mut [MaybeUninit<T>] {
1210-
let (len, cap) = (v.len(), v.capacity());
1211-
unsafe {
1212-
std::slice::from_raw_parts_mut(
1213-
v.as_mut_ptr().add(len) as *mut MaybeUninit<T>,
1214-
cap - len,
1215-
)
1216-
}
1217-
}
12181208
fn slice_as_uninit<T>(v: &mut [T]) -> &mut [MaybeUninit<T>] {
12191209
unsafe { &mut *(v as *mut [T] as *mut [MaybeUninit<T>]) }
12201210
}

0 commit comments

Comments
 (0)