1
0
mirror of https://github.com/actix/actix-extras.git synced 2024-11-24 16:02:59 +01:00

check if close code exists before reading it

This commit is contained in:
Nathan Fox 2018-04-20 21:30:18 -04:00
parent 9880a95603
commit 5528cf62f0

View File

@ -310,10 +310,14 @@ where
} }
OpCode::Close => { OpCode::Close => {
self.closed = true; self.closed = true;
let code = NetworkEndian::read_uint(payload.as_ref(), 2) as u16; let close_code = if payload.len() >= 2{
Ok(Async::Ready(Some(Message::Close(CloseCode::from( let raw_code = NetworkEndian::read_uint(payload.as_ref(), 2) as u16;
code, CloseCode::from(raw_code)
))))) }else{
CloseCode::Status
};
Ok(Async::Ready(Some(Message::Close(close_code))))
} }
OpCode::Ping => Ok(Async::Ready(Some(Message::Ping( OpCode::Ping => Ok(Async::Ready(Some(Message::Ping(
String::from_utf8_lossy(payload.as_ref()).into(), String::from_utf8_lossy(payload.as_ref()).into(),