diff --git a/src/inspector_socket.cc b/src/inspector_socket.cc index 93d819a21e5e6c..de4f8b7861aba4 100644 --- a/src/inspector_socket.cc +++ b/src/inspector_socket.cc @@ -401,10 +401,12 @@ class WsHandler : public ProtocolHandler { if (processed > 0) { remove_from_beginning(data, processed); } - } while (processed > 0 && !data->empty()); + } while (processed > 0 && !data->empty() && tcp_); } - void Write(const std::vector data) override { + void Write(const std::vector& data) override { + if (!tcp_) + return; std::vector output = encode_frame_hybi17(data); WriteRaw(output, WriteRequest::Cleanup); } @@ -666,6 +668,8 @@ ProtocolHandler::ProtocolHandler(InspectorSocket* inspector, int ProtocolHandler::WriteRaw(const std::vector& buffer, uv_write_cb write_cb) { + if (!tcp_) + return -1; return tcp_->WriteRaw(buffer, write_cb); }