void MainThreadWebSocketChannel::didFailSocketStream(SocketStreamHandle* handle, const SocketStreamError& error) { WTF_LOG(Network, "MainThreadWebSocketChannel %p didFailSocketStream()", this); ASSERT_UNUSED(handle, handle == m_handle || !m_handle); m_shouldDiscardReceivedData = true; String message; if (error.isNull()) message = "WebSocket network error"; else if (error.localizedDescription().isNull()) message = "WebSocket network error: error code " + String::number(error.errorCode()); else message = "WebSocket network error: error code " + String::number(error.errorCode()) + ", " + error.localizedDescription(); String failingURL = error.failingURL(); ASSERT(failingURL.isNull() || m_handshake->url().string() == failingURL); if (failingURL.isNull()) failingURL = m_handshake->url().string(); WTF_LOG(Network, "Error Message: '%s', FailURL: '%s'", message.utf8().data(), failingURL.utf8().data()); RefPtrWillBeRawPtr<WebSocketChannel> protect(this); if (m_state != ChannelClosing && m_state != ChannelClosed) callDidReceiveMessageError(); if (m_state != ChannelClosed) disconnectHandle(); }
bool SocketStreamErrorBase::compare(const SocketStreamError& a, const SocketStreamError& b) { if (a.isNull() && b.isNull()) return true; if (a.isNull() || b.isNull()) return false; if (a.errorCode() != b.errorCode()) return false; if (a.failingURL() != b.failingURL()) return false; if (a.localizedDescription() != b.localizedDescription()) return false; return true; }
void WebSocketChannel::didFailSocketStream(SocketStreamHandle* handle, const SocketStreamError& error) { LOG(Network, "WebSocketChannel %p didFailSocketStream()", this); ASSERT(handle == m_handle || !m_handle); if (m_document) { String message; if (error.isNull()) message = "WebSocket network error"; else if (error.localizedDescription().isNull()) message = "WebSocket network error: error code " + String::number(error.errorCode()); else message = "WebSocket network error: " + error.localizedDescription(); InspectorInstrumentation::didReceiveWebSocketFrameError(m_document, m_identifier, message); m_document->addConsoleMessage(NetworkMessageSource, ErrorMessageLevel, message); } m_shouldDiscardReceivedData = true; handle->disconnect(); }
void WebSocketChannel::didFailSocketStream(SocketStreamHandle* handle, const SocketStreamError& error) { LOG(Network, "WebSocketChannel %p didFailSocketStream", this); ASSERT(handle == m_handle || !m_handle); if (m_document) { String message; if (error.isNull()) message = "WebSocket network error"; else if (error.localizedDescription().isNull()) message = "WebSocket network error: error code " + String::number(error.errorCode()); else message = "WebSocket network error: " + error.localizedDescription(); String failingURL = error.failingURL(); ASSERT(failingURL.isNull() || m_handshake->url().string() == failingURL); if (failingURL.isNull()) failingURL = m_handshake->url().string(); m_document->addConsoleMessage(NetworkMessageSource, LogMessageType, ErrorMessageLevel, message, failingURL); } m_shouldDiscardReceivedData = true; handle->disconnect(); }
void WebSocketChannel::didFail(SocketStreamHandle* handle, const SocketStreamError& error) { LOG(Network, "WebSocketChannel %p didFail", this); ASSERT(handle == m_handle || !m_handle); if (m_context) { String message; if (error.isNull()) message = "WebSocket network error"; else if (error.localizedDescription().isNull()) message = makeString("WebSocket network error: error code ", String::number(error.errorCode())); else message = makeString("WebSocket network error: ", error.localizedDescription()); m_context->addMessage(OtherMessageSource, NetworkErrorMessageType, ErrorMessageLevel, message, 0, error.failingURL(), 0); } m_shouldDiscardReceivedData = true; handle->close(); }
bool SocketStreamErrorBase::compare(const SocketStreamError& a, const SocketStreamError& b) { return a.errorCode() == b.errorCode(); }