From b9e755c43f08b5e89a901733db69a623e69b04e0 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 af5b9c2..5988827 100644 --- a/src/arrayvec.rs +++ b/src/arrayvec.rs @@ -503,8 +503,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) };