From d76014192dbfd134794a6129e73f38645d7e6314 Mon Sep 17 00:00:00 2001 From: Divy Srivastava Date: Sun, 30 Oct 2022 23:52:49 -0700 Subject: fix(ext/websocket): make try_send ops infallible (#16454) Fixes #16450 --- ext/websocket/lib.rs | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/ext/websocket/lib.rs b/ext/websocket/lib.rs index 337752c21..61bc44459 100644 --- a/ext/websocket/lib.rs +++ b/ext/websocket/lib.rs @@ -505,9 +505,12 @@ pub fn op_ws_try_send_string( state: &mut OpState, rid: ResourceId, text: String, -) -> Result { - let resource = state.resource_table.get::(rid)?; - resource.try_send(Message::Text(text)) +) -> bool { + let resource = match state.resource_table.get::(rid) { + Ok(resource) => resource, + Err(_) => return false, + }; + resource.try_send(Message::Text(text)).is_ok() } #[op(fast)] @@ -515,9 +518,12 @@ pub fn op_ws_try_send_binary( state: &mut OpState, rid: u32, value: &[u8], -) -> Result { - let resource = state.resource_table.get::(rid)?; - resource.try_send(Message::Binary(value.to_vec())) +) -> bool { + let resource = match state.resource_table.get::(rid) { + Ok(resource) => resource, + Err(_) => return false, + }; + resource.try_send(Message::Binary(value.to_vec())).is_ok() } #[op(deferred)] -- cgit v1.2.3