From 4ab5bc4a267f23cb6ed3b64e73600855c93b7803 Mon Sep 17 00:00:00 2001 From: Flawid DSouza Date: Fri, 19 Jan 2024 17:43:15 +0530 Subject: [PATCH] fix(ui): Socket Panel > isClientConnected was returning true even if socket was disconnected in reality - so now we use the actual state of the socket instead of always returning true --- packages/ui/src/components/SocketPanel.vue | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/packages/ui/src/components/SocketPanel.vue b/packages/ui/src/components/SocketPanel.vue index 197e4b94..4e9d29ef 100644 --- a/packages/ui/src/components/SocketPanel.vue +++ b/packages/ui/src/components/SocketPanel.vue @@ -503,6 +503,10 @@ function clearMessages(client: Client) { function disconnect(client: Client) { const socket = sockets[activeTab.value._id + '-' + client.id] + if(socket === undefined || socket === null) { + return false + } + if(socket instanceof WebSocket) { socket.close() } @@ -637,11 +641,11 @@ function isClientConnected(client: Client) { } if(socket instanceof WebSocket) { - return true + return socket.readyState === WebSocket.OPEN } if(socket.constructor.name.startsWith('Socket')) { - return true + return socket.connected } return false