Skip to content

Commit

Permalink
refactor: Added hotfix for issue 133
Browse files Browse the repository at this point in the history
  • Loading branch information
1c3t3a committed Dec 1, 2021
1 parent c49fe9e commit 0e3ff32
Showing 1 changed file with 21 additions and 4 deletions.
25 changes: 21 additions & 4 deletions engineio/src/transports/websocket_secure.rs
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,17 @@ use std::borrow::Cow;
use std::convert::TryFrom;
use std::str::from_utf8;
use std::sync::{Arc, Mutex, RwLock};
use std::thread::sleep;
use std::time::Duration;
use websocket::WebSocketError;
use websocket::{
client::sync::Client as WsClient,
client::Url,
dataframe::DataFrame,
dataframe::Opcode,
header::Headers,
sync::stream::{TcpStream, TlsStream},
ws::dataframe::DataFrame,
ws::dataframe::DataFrame as DataFrameable,
ClientBuilder as WsClientBuilder, Message,
};

Expand Down Expand Up @@ -96,11 +100,24 @@ impl Transport for WebsocketSecureTransport {
}

fn poll(&self) -> Result<Bytes> {
let mut receiver = self.client.lock()?;
let received_df: DataFrame;
loop {
let mut receiver = self.client.lock()?;
receiver.set_nonblocking(true)?;
match receiver.recv_dataframe() {
Ok(payload) => {
received_df = payload;
break;
}
Err(WebSocketError::Other(_)) => (),

This comment has been minimized.

Copy link
@ctrlaltf24

ctrlaltf24 Dec 1, 2021

Collaborator

Why is this error silenced @1c3t3a ? Consider adding at least a log statement.

This comment has been minimized.

Copy link
@1c3t3a

1c3t3a Dec 2, 2021

Author Owner

Good point, I matched on the exact error while debugging, but you're right. I've committed a new version that logs.

Err(err) => return Err(err.into()),
}
receiver.set_nonblocking(false)?;
drop(receiver);
sleep(Duration::from_millis(200));
}

// if this is a binary payload, we mark it as a message
let received_df = receiver.recv_dataframe()?;
drop(receiver);
match received_df.opcode {
Opcode::Binary => {
let mut message = BytesMut::with_capacity(received_df.data.len() + 1);
Expand Down

0 comments on commit 0e3ff32

Please sign in to comment.