Title: [87135] trunk
- Revision
- 87135
- Author
- u...@chromium.org
- Date
- 2011-05-24 01:10:46 -0700 (Tue, 24 May 2011)
Log Message
2011-05-24 Fumitoshi Ukai <u...@chromium.org>
Reviewed by Adam Barth.
close before open WebSocket doesn't fire close event.
https://bugs.webkit.org/show_bug.cgi?id=57301
* http/tests/websocket/tests/close-before-open-expected.txt: Added.
* http/tests/websocket/tests/close-before-open.html: Added.
2011-05-24 Fumitoshi Ukai <u...@chromium.org>
Reviewed by Adam Barth.
close before open WebSocket doesn't fire close event.
https://bugs.webkit.org/show_bug.cgi?id=57301
In platformClose(), m_readStream may be 0 until proxy is resolved.
It should callback didClose() in such case.
Test: http/tests/websocket/tests/close-before-open.html
* platform/network/cf/SocketStreamHandleCFNet.cpp:
(WebCore::SocketStreamHandle::platformClose):
Modified Paths
Added Paths
Diff
Modified: trunk/LayoutTests/ChangeLog (87134 => 87135)
--- trunk/LayoutTests/ChangeLog 2011-05-24 07:42:25 UTC (rev 87134)
+++ trunk/LayoutTests/ChangeLog 2011-05-24 08:10:46 UTC (rev 87135)
@@ -1,3 +1,13 @@
+2011-05-24 Fumitoshi Ukai <u...@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ close before open WebSocket doesn't fire close event.
+ https://bugs.webkit.org/show_bug.cgi?id=57301
+
+ * http/tests/websocket/tests/close-before-open-expected.txt: Added.
+ * http/tests/websocket/tests/close-before-open.html: Added.
+
2011-05-24 Zoltan Horvath <zol...@webkit.org>
[Qt][WK2] Paint the bot green for ultimate satisfaction of Ossy.
Added: trunk/LayoutTests/http/tests/websocket/tests/close-before-open-expected.txt (0 => 87135)
--- trunk/LayoutTests/http/tests/websocket/tests/close-before-open-expected.txt (rev 0)
+++ trunk/LayoutTests/http/tests/websocket/tests/close-before-open-expected.txt 2011-05-24 08:10:46 UTC (rev 87135)
@@ -0,0 +1,9 @@
+Test if Web Socket fires close event when WebSocket is opened and closed fore open event is received.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+closed
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
Added: trunk/LayoutTests/http/tests/websocket/tests/close-before-open.html (0 => 87135)
--- trunk/LayoutTests/http/tests/websocket/tests/close-before-open.html (rev 0)
+++ trunk/LayoutTests/http/tests/websocket/tests/close-before-open.html 2011-05-24 08:10:46 UTC (rev 87135)
@@ -0,0 +1,29 @@
+<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
+<html>
+<head>
+<link rel="stylesheet" href=""
+<script src=""
+<script src=""
+</head>
+<body>
+<div id="description"></div>
+<div id="console"></div>
+<script type="text/_javascript_">
+description("Test if Web Socket fires close event when WebSocket is opened and closed fore open event is received.");
+
+if (window.layoutTestController)
+ layoutTestController.waitUntilDone();
+
+var ws = new WebSocket("ws://127.0.0.1:8880/websocket/tests/hanging-handshake");
+ws._onclose_ = function() {
+ debug("closed");
+ isSuccessfullyParsed();
+ if (window.layoutTestController)
+ layoutTestController.notifyDone();
+};
+var successfullyParsed = true;
+ws.close();
+</script>
+
+</body>
+</html>
Modified: trunk/Source/WebCore/ChangeLog (87134 => 87135)
--- trunk/Source/WebCore/ChangeLog 2011-05-24 07:42:25 UTC (rev 87134)
+++ trunk/Source/WebCore/ChangeLog 2011-05-24 08:10:46 UTC (rev 87135)
@@ -1,3 +1,18 @@
+2011-05-24 Fumitoshi Ukai <u...@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ close before open WebSocket doesn't fire close event.
+ https://bugs.webkit.org/show_bug.cgi?id=57301
+
+ In platformClose(), m_readStream may be 0 until proxy is resolved.
+ It should callback didClose() in such case.
+
+ Test: http/tests/websocket/tests/close-before-open.html
+
+ * platform/network/cf/SocketStreamHandleCFNet.cpp:
+ (WebCore::SocketStreamHandle::platformClose):
+
2011-05-23 Sheriff Bot <webkit.review....@gmail.com>
Unreviewed, rolling out r87118.
Modified: trunk/Source/WebCore/platform/network/cf/SocketStreamHandleCFNet.cpp (87134 => 87135)
--- trunk/Source/WebCore/platform/network/cf/SocketStreamHandleCFNet.cpp 2011-05-24 07:42:25 UTC (rev 87134)
+++ trunk/Source/WebCore/platform/network/cf/SocketStreamHandleCFNet.cpp 2011-05-24 08:10:46 UTC (rev 87135)
@@ -569,8 +569,11 @@
removePACRunLoopSource();
ASSERT(!m_readStream == !m_writeStream);
- if (!m_readStream)
+ if (!m_readStream) {
+ if (m_connectingSubstate == New || m_connectingSubstate == ExecutingPACFile)
+ m_client->didClose(this);
return;
+ }
#if PLATFORM(WIN)
CFReadStreamUnscheduleFromRunLoop(m_readStream.get(), loaderRunLoop(), kCFRunLoopDefaultMode);
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes