Skip to content

Commit 534e491

Browse files
committed
fix: avoid char-boundary panic in NBReader::try_read
1 parent 9f57adf commit 534e491

1 file changed

Lines changed: 3 additions & 5 deletions

File tree

src/reader.rs

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -203,11 +203,9 @@ impl NBReader {
203203
pub fn try_read(&mut self) -> Option<char> {
204204
// discard eventual errors, EOF will be handled in read_until correctly
205205
let _ = self.read_into_buffer();
206-
if !self.buffer.is_empty() {
207-
self.buffer.drain(..1).last()
208-
} else {
209-
None
210-
}
206+
let first = self.buffer.chars().next()?;
207+
self.buffer.drain(..first.len_utf8());
208+
Some(first)
211209
}
212210
}
213211

0 commit comments

Comments
 (0)