Skip to content

Commit caf737e

Browse files
committed
---
yaml --- r: 53180 b: refs/heads/dist-snap c: 5aa0463 h: refs/heads/master v: v3
1 parent cb0abf8 commit caf737e

File tree

2 files changed

+6
-9
lines changed

2 files changed

+6
-9
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
77
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b
88
refs/heads/try2: 147ecfdd8221e4a4d4e090486829a06da1e0ca3c
99
refs/heads/incoming: 44d4d6de762f3f9aae1fedcf454c66b79b3ad58d
10-
refs/heads/dist-snap: a2573290710f4b3f14be475f4ef2af773de7b4c7
10+
refs/heads/dist-snap: 5aa04635647287481ceca44cf557b698666fa939
1111
refs/tags/release-0.2: c870d2dffb391e14efb05aa27898f1f6333a9596
1212
refs/tags/release-0.3: b5f0d0f648d9a6153664837026ba1be43d3e2503
1313
refs/heads/try3: 9387340aab40a73e8424c48fd42f0c521a4875c0

branches/dist-snap/src/libstd/deque.rs

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -98,17 +98,14 @@ impl<T: Copy> Deque<T> {
9898

9999
/// Grow is only called on full elts, so nelts is also len(elts), unlike
100100
/// elsewhere.
101-
fn grow<T: Copy>(nelts: uint, lo: uint, elts: &[Option<T>]) -> ~[Option<T>] {
101+
fn grow<T>(nelts: uint, lo: uint, elts: &mut [Option<T>]) -> ~[Option<T>] {
102102
assert nelts == elts.len();
103103
let mut rv = ~[];
104104

105-
let mut i = 0u;
106-
let nalloc = uint::next_power_of_two(nelts + 1u);
107-
while i < nalloc {
108-
if i < nelts {
109-
rv.push(elts[(lo + i) % nelts]);
110-
} else { rv.push(None); }
111-
i += 1u;
105+
do vec::grow_fn(&mut rv, nelts + 1) |i| {
106+
let mut element = None;
107+
element <-> elts[(lo + i) % nelts];
108+
element
112109
}
113110

114111
rv

0 commit comments

Comments
 (0)