Fix stacked borrows violations

Use offsets from a single pointer instead of multiple pointers into an array.
Also removed an integer-pointer cast
This commit is contained in:
clubby789
2022-09-06 17:12:47 +01:00
committed by Ulrik Sverdrup
parent a927f7cf03
commit c9ff579405
2 changed files with 9 additions and 8 deletions
+5 -3
View File
@@ -371,10 +371,12 @@ impl<const CAP: usize> ArrayString<CAP>
let next = idx + ch.len_utf8();
let len = self.len();
let ptr = self.as_mut_ptr();
unsafe {
ptr::copy(self.as_ptr().add(next),
self.as_mut_ptr().add(idx),
len - next);
ptr::copy(
ptr.add(next),
ptr.add(idx),
len - next);
self.set_len(len - (next - idx));
}
ch