} else {
asize = 0;
}
+ if size == asize {
+ if self.pkt_buf.len() > 0 {
+ return Ok(self.pkt_buf.pop().unwrap());
+ } else {
+ continue;
+ }
+ }
let mut buf: Vec<u8> = Vec::with_capacity(size - asize + 1);
buf.resize(size - asize + 1, 0);
buf[0] = ctype;