From c094906a1326330c0cb0aaa10eb50dde412f116b Mon Sep 17 00:00:00 2001 From: Niklas Fiekas Date: Mon, 22 Feb 2021 18:43:17 +0100 Subject: [PATCH] Fix mutable reborrow Co-authored-by: bluss --- src/arrayvec.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/arrayvec.rs b/src/arrayvec.rs index dc2b766..541e0c9 100644 --- a/src/arrayvec.rs +++ b/src/arrayvec.rs @@ -478,8 +478,8 @@ impl ArrayVec { let mut g = BackshiftOnDrop { v: self, processed_len: 0, deleted_cnt: 0, original_len }; while g.processed_len < original_len { - let cur = unsafe { &mut *g.v.as_mut_ptr().add(g.processed_len) }; - if !f(cur) { + let cur = unsafe { g.v.as_mut_ptr().add(g.processed_len) }; + if !f(unsafe { &mut *cur }) { g.processed_len += 1; g.deleted_cnt += 1; unsafe { ptr::drop_in_place(cur) };