Skip to content

Commit 30dc02c

Browse files
committed
std: Make vec::push_all_move call reserve_at_least
vec::unshift uses this to add elements, scheduler queues use unshift, and this was causing a lot of reallocation
1 parent e866277 commit 30dc02c

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

src/libstd/vec.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1401,7 +1401,7 @@ impl<T> OwnedVector<T> for ~[T] {
14011401
let self_len = self.len();
14021402
let rhs_len = rhs.len();
14031403
let new_len = self_len + rhs_len;
1404-
self.reserve(new_len);
1404+
self.reserve_at_least(new_len);
14051405
unsafe { // Note: infallible.
14061406
let self_p = vec::raw::to_mut_ptr(*self);
14071407
let rhs_p = vec::raw::to_ptr(rhs);

0 commit comments

Comments
 (0)