rust/hedgewars-server/src/protocol.rs
changeset 16018 fb389df02e3e
parent 15854 a4d505a32879
child 16027 14fe5bfe9862
equal deleted inserted replaced
16017:0b2e0a7d0431 16018:fb389df02e3e
   100     ) -> Result<HwProtocolMessage> {
   100     ) -> Result<HwProtocolMessage> {
   101         use ProtocolError::*;
   101         use ProtocolError::*;
   102 
   102 
   103         loop {
   103         loop {
   104             if !self.buffer.has_remaining() {
   104             if !self.buffer.has_remaining() {
       
   105                 //todo!("ensure the buffer doesn't grow indefinitely")
   105                 match timeout(self.read_timeout, stream.read_buf(&mut self.buffer)).await {
   106                 match timeout(self.read_timeout, stream.read_buf(&mut self.buffer)).await {
   106                     Err(_) => return Err(Timeout),
   107                     Err(_) => return Err(Timeout),
   107                     Ok(Err(e)) => return Err(Network(Box::new(e))),
   108                     Ok(Err(e)) => return Err(Network(Box::new(e))),
   108                     Ok(Ok(0)) => return Err(Eof),
   109                     Ok(Ok(0)) => return Err(Eof),
   109                     Ok(Ok(_)) => (),
   110                     Ok(Ok(_)) => (),