equal
deleted
inserted
replaced
100 stream: &mut R, |
100 stream: &mut R, |
101 ) -> Result<HwProtocolMessage> { |
101 ) -> Result<HwProtocolMessage> { |
102 use ProtocolError::*; |
102 use ProtocolError::*; |
103 |
103 |
104 loop { |
104 loop { |
105 if self.buffer.capacity() < 1024 { |
105 let remaining = self.buffer.capacity() - self.buffer.len(); |
106 self.buffer.reserve(1024 - self.buffer.capacity()); |
106 if remaining < 1024 { |
|
107 self.buffer.reserve(2048 - remaining); |
107 } |
108 } |
108 |
109 |
109 if !self.buffer.has_remaining() || self.is_recovering { |
110 if !self.buffer.has_remaining() || self.is_recovering { |
110 //todo!("ensure the buffer doesn't grow indefinitely") |
111 //todo!("ensure the buffer doesn't grow indefinitely") |
111 match timeout(self.read_timeout, stream.read_buf(&mut self.buffer)).await { |
112 match timeout(self.read_timeout, stream.read_buf(&mut self.buffer)).await { |