summaryrefslogtreecommitdiffstats
path: root/Source/WebCore/websockets/WebSocket.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebCore/websockets/WebSocket.cpp')
-rw-r--r--Source/WebCore/websockets/WebSocket.cpp5
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);
}