diff --git a/src/libstd/arena.rs b/src/libstd/arena.rs index 6d8bc9fa0c3c..b066232cd232 100644 --- a/src/libstd/arena.rs +++ b/src/libstd/arena.rs @@ -8,7 +8,9 @@ type chunk = {data: [u8], mut fill: uint}; type arena = {mut chunks: list::list<@chunk>}; fn chunk(size: uint) -> @chunk { - @{ data: vec::from_elem(size, 0u8), mut fill: 0u } + let mut v = []; + vec::reserve(v, size); + @{ data: v, mut fill: 0u } } fn arena_with_size(initial_size: uint) -> arena {