about summary refs log tree commit diff
path: root/src/liballoc
diff options
context:
space:
mode:
authorAlex Crichton <alex@alexcrichton.com>2018-10-05 09:15:57 -0700
committerAlex Crichton <alex@alexcrichton.com>2018-10-05 09:15:57 -0700
commit70ae43fee798ea7af56db31b4e43180ef42a4476 (patch)
treed0830f7aef51670bf28ca5f9e2a396ade67b7a74 /src/liballoc
parent90b946912128a08b9b5bd29fbdcc866c83890641 (diff)
downloadrust-70ae43fee798ea7af56db31b4e43180ef42a4476.tar.gz
rust-70ae43fee798ea7af56db31b4e43180ef42a4476.zip
Revert "Slightly refactor VecDeque implementation"
This reverts commit 6ce76acae455a32113116cd2f95f8076388fc2d3.
Diffstat (limited to 'src/liballoc')
-rw-r--r--src/liballoc/collections/vec_deque.rs6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/liballoc/collections/vec_deque.rs b/src/liballoc/collections/vec_deque.rs
index d49cb985774..571f35a2031 100644
--- a/src/liballoc/collections/vec_deque.rs
+++ b/src/liballoc/collections/vec_deque.rs
@@ -1024,7 +1024,7 @@ impl<T> VecDeque<T> {
             iter: Iter {
                 tail: drain_tail,
                 head: drain_head,
-                ring: unsafe { self.buffer_as_slice() },
+                ring: unsafe { self.buffer_as_mut_slice() },
             },
         }
     }
@@ -2593,8 +2593,8 @@ impl<T> From<VecDeque<T>> for Vec<T> {
                         let mut right_offset = 0;
                         for i in left_edge..right_edge {
                             right_offset = (i - left_edge) % (cap - right_edge);
-                            let src = right_edge + right_offset;
-                            ptr::swap(buf.add(i), buf.add(src));
+                            let src: isize = (right_edge + right_offset) as isize;
+                            ptr::swap(buf.add(i), buf.offset(src));
                         }
                         let n_ops = right_edge - left_edge;
                         left_edge += n_ops;