Skip to content

Commit

Permalink
use mem::MaybeUninit instead of mem::uninitialized
Browse files Browse the repository at this point in the history
  • Loading branch information
nanpuyue authored and Douman committed Aug 16, 2019
1 parent b1c1716 commit 79e4b28
Showing 1 changed file with 3 additions and 3 deletions.
6 changes: 3 additions & 3 deletions src/bytes.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1666,7 +1666,7 @@ impl<'a> From<&'a [u8]> for BytesMut {
BytesMut::new()
} else if len <= INLINE_CAP {
unsafe {
let mut inner: Inner = mem::uninitialized();
let mut inner: Inner = mem::MaybeUninit::uninit().assume_init();

// Set inline mask
inner.arc = AtomicPtr::new(KIND_INLINE as *mut Shared);
Expand Down Expand Up @@ -1858,7 +1858,7 @@ impl Inner {
if capacity <= INLINE_CAP {
unsafe {
// Using uninitialized memory is ~30% faster
let mut inner: Inner = mem::uninitialized();
let mut inner: Inner = mem::MaybeUninit::uninit().assume_init();
inner.arc = AtomicPtr::new(KIND_INLINE as *mut Shared);
inner
}
Expand Down Expand Up @@ -2176,7 +2176,7 @@ impl Inner {

if self.is_inline_or_static() {
// In this case, a shallow_clone still involves copying the data.
let mut inner: Inner = mem::uninitialized();
let mut inner: Inner = mem::MaybeUninit::uninit().assume_init();
ptr::copy_nonoverlapping(
self,
&mut inner,
Expand Down

0 comments on commit 79e4b28

Please sign in to comment.