about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJörn Horstmann <git@jhorstmann.net>2022-03-25 13:27:18 +0100
committerGitHub <noreply@github.com>2022-03-25 13:27:18 +0100
commitd14c0d2acb3ff1d0111920185109c9697a3cd460 (patch)
treeacb7cea4666f30d32cfb6b22c92ec1d09a1e1f04
parent0cf606177e79bc580fa27a82eb9c8b56e7253f46 (diff)
downloadrust-d14c0d2acb3ff1d0111920185109c9697a3cd460.tar.gz
rust-d14c0d2acb3ff1d0111920185109c9697a3cd460.zip
Use ManuallyDrop::take instead of into_inner
Co-authored-by: Daniel Henry-Mantilla <daniel.henry.mantilla@gmail.com>
-rw-r--r--library/alloc/src/vec/into_iter.rs2
1 files changed, 1 insertions, 1 deletions
diff --git a/library/alloc/src/vec/into_iter.rs b/library/alloc/src/vec/into_iter.rs
index 471042cd717..1f9398faf22 100644
--- a/library/alloc/src/vec/into_iter.rs
+++ b/library/alloc/src/vec/into_iter.rs
@@ -315,7 +315,7 @@ unsafe impl<#[may_dangle] T, A: Allocator> Drop for IntoIter<T, A> {
             fn drop(&mut self) {
                 unsafe {
                     // `IntoIter::alloc` is not used anymore after this and will be dropped by RawVec
-                    let alloc = ManuallyDrop::into_inner(ptr::read(&self.0.alloc));
+                    let alloc = ManuallyDrop::take(&mut self.0.alloc);
                     // RawVec handles deallocation
                     let _ = RawVec::from_raw_parts_in(self.0.buf.as_ptr(), self.0.cap, alloc);
                 }