mirror of
https://github.com/rust-lang/rust.git
synced 2025-05-14 02:49:40 +00:00
Fix io::Take::read_buf
This commit is contained in:
parent
9d6039ccae
commit
ba3b536e20
@ -2941,7 +2941,7 @@ impl<T: Read> Read for Take<T> {
|
||||
}
|
||||
|
||||
let mut cursor = sliced_buf.unfilled();
|
||||
self.inner.read_buf(cursor.reborrow())?;
|
||||
let result = self.inner.read_buf(cursor.reborrow());
|
||||
|
||||
let new_init = cursor.init_ref().len();
|
||||
let filled = sliced_buf.len();
|
||||
@ -2956,13 +2956,14 @@ impl<T: Read> Read for Take<T> {
|
||||
}
|
||||
|
||||
self.limit -= filled as u64;
|
||||
|
||||
result
|
||||
} else {
|
||||
let written = buf.written();
|
||||
self.inner.read_buf(buf.reborrow())?;
|
||||
let result = self.inner.read_buf(buf.reborrow());
|
||||
self.limit -= (buf.written() - written) as u64;
|
||||
result
|
||||
}
|
||||
|
||||
Ok(())
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user