From bb1227116baa6c7143fffd87accef8b6e423ebe6 Mon Sep 17 00:00:00 2001 From: Florian Hartwig Date: Wed, 25 Mar 2015 01:11:25 +0100 Subject: [PATCH] Fix panics on operations on 0-capacity RingBuf --- src/ring.rs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/ring.rs b/src/ring.rs index 89e7940..fe29db4 100644 --- a/src/ring.rs +++ b/src/ring.rs @@ -60,6 +60,9 @@ impl RingBuf { } fn advance_reader(&mut self, mut cnt: usize) { + if self.cap == 0 { + return; + } cnt = cmp::min(cnt, self.read_remaining()); self.pos += cnt; @@ -162,6 +165,9 @@ impl MutBuf for RingBuf { } fn mut_bytes(&mut self) -> &mut [u8] { + if self.cap == 0 { + return self.as_mut_slice(); + } let mut from; let mut to;