Fix io::BufReader uses of read_buf

This commit is contained in:
Benoît du Garreau 2024-05-22 11:41:19 +02:00
parent ba3b536e20
commit 04710e27d2
2 changed files with 4 additions and 2 deletions

View file

@ -349,7 +349,7 @@ impl<R: ?Sized + Read> Read for BufReader<R> {
let prev = cursor.written();
let mut rem = self.fill_buf()?;
rem.read_buf(cursor.reborrow())?;
rem.read_buf(cursor.reborrow())?; // actually never fails
self.consume(cursor.written() - prev); //slice impl of read_buf known to never unfill buf

View file

@ -133,11 +133,13 @@ impl Buffer {
buf.set_init(self.initialized);
}
reader.read_buf(buf.unfilled())?;
let result = reader.read_buf(buf.unfilled());
self.pos = 0;
self.filled = buf.len();
self.initialized = buf.init_len();
result?;
}
Ok(self.buffer())
}