diff options
| author | Zachary S <zasample18+github@gmail.com> | 2023-09-01 20:20:29 -0500 | 
|---|---|---|
| committer | Zachary S <zasample18+github@gmail.com> | 2023-09-01 20:36:20 -0500 | 
| commit | 11a64a18342865b166d2da703a06deb447f834c1 (patch) | |
| tree | ba6cac954638ee4946ab0fcf9037f2c81c08bbbf | |
| parent | 35e416303e6591a71ef6a91e006c602d2def3968 (diff) | |
| download | rust-11a64a18342865b166d2da703a06deb447f834c1.tar.gz rust-11a64a18342865b166d2da703a06deb447f834c1.zip | |
don't panic in BorrowedCursor::write
| -rw-r--r-- | library/std/src/io/readbuf.rs | 5 | 
1 files changed, 3 insertions, 2 deletions
| diff --git a/library/std/src/io/readbuf.rs b/library/std/src/io/readbuf.rs index 034ddd8df9a..95044de2a09 100644 --- a/library/std/src/io/readbuf.rs +++ b/library/std/src/io/readbuf.rs @@ -306,8 +306,9 @@ impl<'a> BorrowedCursor<'a> { impl<'a> Write for BorrowedCursor<'a> { fn write(&mut self, buf: &[u8]) -> Result<usize> { - self.append(buf); - Ok(buf.len()) + let amt = cmp::min(buf.len(), self.capacity()); + self.append(&buf[..amt]); + Ok(amt) } #[inline] | 
