File tree Expand file tree Collapse file tree 2 files changed +5
-9
lines changed
branches/auto/src/libstd/io Expand file tree Collapse file tree 2 files changed +5
-9
lines changed Original file line number Diff line number Diff line change @@ -10,7 +10,7 @@ refs/tags/release-0.3: b5f0d0f648d9a6153664837026ba1be43d3e2503
10
10
refs/tags/release-0.3.1: 495bae036dfe5ec6ceafd3312b4dca48741e845b
11
11
refs/tags/release-0.4: e828ea2080499553b97dfe33b3f4d472b4562ad7
12
12
refs/tags/release-0.5: 7e3bcfbf21278251ee936ad53e92e9b719702d73
13
- refs/heads/auto: 8d3e55908ae0e51f04c170133c9f9739886b8e2e
13
+ refs/heads/auto: 240734c31e529557583a0dc8e97abf858b4a375d
14
14
refs/heads/servo: af82457af293e2a842ba6b7759b70288da276167
15
15
refs/tags/release-0.6: b4ebcfa1812664df5e142f0134a5faea3918544c
16
16
refs/tags/0.1: b19db808c2793fe2976759b85a355c3ad8c8b336
Original file line number Diff line number Diff line change @@ -101,18 +101,14 @@ fn append_to_string<F>(buf: &mut String, f: F) -> Result<usize>
101
101
fn read_to_end < R : Read + ?Sized > ( r : & mut R , buf : & mut Vec < u8 > ) -> Result < usize > {
102
102
let start_len = buf. len ( ) ;
103
103
let mut len = start_len;
104
- let min_cap_bump = 16 ;
104
+ let mut new_write_size = 16 ;
105
105
let ret;
106
106
loop {
107
107
if len == buf. len ( ) {
108
- if buf. capacity ( ) == buf. len ( ) {
109
- // reserve() rounds up our request such that every request
110
- // (with maybe the exception of the first request) for the
111
- // same amount of space doubles our capacity.
112
- buf. reserve ( min_cap_bump) ;
108
+ if new_write_size < DEFAULT_BUF_SIZE {
109
+ new_write_size *= 2 ;
113
110
}
114
- let new_area = buf. capacity ( ) - buf. len ( ) ;
115
- buf. extend ( iter:: repeat ( 0 ) . take ( new_area) ) ;
111
+ buf. extend ( iter:: repeat ( 0 ) . take ( new_write_size) ) ;
116
112
}
117
113
118
114
match r. read ( & mut buf[ len..] ) {
You can’t perform that action at this time.
0 commit comments