Skip to content

Commit f07af2f

Browse files
committed
---
yaml --- r: 46335 b: refs/heads/auto c: 5aa0463 h: refs/heads/master i: 46333: 3bdfebf 46331: daeae5d 46327: a840378 46319: 9aa88ac 46303: d73fc8c 46271: da6767a 46207: c30b96a 46079: 657bed8 v: v3
1 parent a625f94 commit f07af2f

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
@@ -14,4 +14,4 @@ refs/heads/try3: 9387340aab40a73e8424c48fd42f0c521a4875c0
1414
refs/tags/release-0.3.1: 495bae036dfe5ec6ceafd3312b4dca48741e845b
1515
refs/tags/release-0.4: e828ea2080499553b97dfe33b3f4d472b4562ad7
1616
refs/tags/release-0.5: 7e3bcfbf21278251ee936ad53e92e9b719702d73
17-
refs/heads/auto: a2573290710f4b3f14be475f4ef2af773de7b4c7
17+
refs/heads/auto: 5aa04635647287481ceca44cf557b698666fa939

branches/auto/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)