diff options
Diffstat (limited to 'Source/WebCore/websockets/WebSocket.cpp')
-rw-r--r-- | Source/WebCore/websockets/WebSocket.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/Source/WebCore/websockets/WebSocket.cpp b/Source/WebCore/websockets/WebSocket.cpp index e15d079..5dfd48b 100644 --- a/Source/WebCore/websockets/WebSocket.cpp +++ b/Source/WebCore/websockets/WebSocket.cpp @@ -283,7 +283,10 @@ void WebSocket::didClose(unsigned long unhandledBufferedAmount) m_bufferedAmountAfterClose += unhandledBufferedAmount; ASSERT(scriptExecutionContext()); dispatchEvent(Event::create(eventNames().closeEvent, false, false)); - m_channel = 0; + if (m_channel) { + m_channel->disconnect(); + m_channel = 0; + } if (hasPendingActivity()) ActiveDOMObject::unsetPendingActivity(this); } |