Title: [91826] trunk
Revision
91826
Author
[email protected]
Date
2011-07-27 01:56:58 -0700 (Wed, 27 Jul 2011)

Log Message

WebSocket: CloseEvent attribute is not available on WebWorkers in JSC
https://bugs.webkit.org/show_bug.cgi?id=65232

Reviewed by Kent Tamura.

Source/WebCore:

Add [NoStaticTables] attribute to CloseEvent interface definition. This attribute
makes the code generator obtain the attributes table used for building ClassInfo
through JSGlobalData, instead of directly using a statically-allocated table.

Generally speaking, NoStaticTables needs to be specified in interfaces which
may be accessed from workers.

Tests: http/tests/websocket/tests/hybi/workers/shared-worker-simple.html (updated)
       http/tests/websocket/tests/hybi/workers/worker-simple.html (updated)

* websockets/CloseEvent.idl: Fixed the formatting, too.

LayoutTests:

* http/tests/websocket/tests/hybi/workers/resources/worker-simple.js:
(runTests): Check the value of closeEvent.wasClean.
* http/tests/websocket/tests/hybi/workers/shared-worker-simple-expected.txt:
* http/tests/websocket/tests/hybi/workers/worker-simple-expected.txt:

Modified Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (91825 => 91826)


--- trunk/LayoutTests/ChangeLog	2011-07-27 07:12:38 UTC (rev 91825)
+++ trunk/LayoutTests/ChangeLog	2011-07-27 08:56:58 UTC (rev 91826)
@@ -1,3 +1,15 @@
+2011-07-27  Yuta Kitamura  <[email protected]>
+
+        WebSocket: CloseEvent attribute is not available on WebWorkers in JSC
+        https://bugs.webkit.org/show_bug.cgi?id=65232
+
+        Reviewed by Kent Tamura.
+
+        * http/tests/websocket/tests/hybi/workers/resources/worker-simple.js:
+        (runTests): Check the value of closeEvent.wasClean.
+        * http/tests/websocket/tests/hybi/workers/shared-worker-simple-expected.txt:
+        * http/tests/websocket/tests/hybi/workers/worker-simple-expected.txt:
+
 2011-07-26  Mark Hahnenberg  <[email protected]>
 
         reduce and reduceRight bind callback's this to null rather than undefined

Modified: trunk/LayoutTests/http/tests/websocket/tests/hybi/workers/resources/worker-simple.js (91825 => 91826)


--- trunk/LayoutTests/http/tests/websocket/tests/hybi/workers/resources/worker-simple.js	2011-07-27 07:12:38 UTC (rev 91825)
+++ trunk/LayoutTests/http/tests/websocket/tests/hybi/workers/resources/worker-simple.js	2011-07-27 08:56:58 UTC (rev 91826)
@@ -26,8 +26,12 @@
         ws._onmessage_ = function(evt) {
             postMessage("PASS: worker: Received: '" + evt.data + "'");
         };
-        ws._onclose_ = function() {
+        ws._onclose_ = function(closeEvent) {
             postMessage("PASS: worker: Closed.");
+            if (closeEvent.wasClean === true)
+                postMessage("PASS: worker: closeEvent.wasClean is true.");
+            else
+                postMessage("FAIL: worker: closeEvent.wasClean should be true but was \"" + closeEvent.wasClean + "\".");
             postMessage("DONE");
         };
     } catch (e) {

Modified: trunk/LayoutTests/http/tests/websocket/tests/hybi/workers/shared-worker-simple-expected.txt (91825 => 91826)


--- trunk/LayoutTests/http/tests/websocket/tests/hybi/workers/shared-worker-simple-expected.txt	2011-07-27 07:12:38 UTC (rev 91825)
+++ trunk/LayoutTests/http/tests/websocket/tests/hybi/workers/shared-worker-simple-expected.txt	2011-07-27 08:56:58 UTC (rev 91826)
@@ -8,6 +8,7 @@
 PASS: worker: Connected.
 PASS: worker: Received: 'Hello from Simple WSH.'
 PASS: worker: Closed.
+PASS: worker: closeEvent.wasClean is true.
 DONE
 TEST COMPLETE
 

Modified: trunk/LayoutTests/http/tests/websocket/tests/hybi/workers/worker-simple-expected.txt (91825 => 91826)


--- trunk/LayoutTests/http/tests/websocket/tests/hybi/workers/worker-simple-expected.txt	2011-07-27 07:12:38 UTC (rev 91825)
+++ trunk/LayoutTests/http/tests/websocket/tests/hybi/workers/worker-simple-expected.txt	2011-07-27 08:56:58 UTC (rev 91826)
@@ -8,6 +8,7 @@
 PASS: worker: Connected.
 PASS: worker: Received: 'Hello from Simple WSH.'
 PASS: worker: Closed.
+PASS: worker: closeEvent.wasClean is true.
 DONE
 TEST COMPLETE
 

Modified: trunk/Source/WebCore/ChangeLog (91825 => 91826)


--- trunk/Source/WebCore/ChangeLog	2011-07-27 07:12:38 UTC (rev 91825)
+++ trunk/Source/WebCore/ChangeLog	2011-07-27 08:56:58 UTC (rev 91826)
@@ -1,3 +1,22 @@
+2011-07-27  Yuta Kitamura  <[email protected]>
+
+        WebSocket: CloseEvent attribute is not available on WebWorkers in JSC
+        https://bugs.webkit.org/show_bug.cgi?id=65232
+
+        Reviewed by Kent Tamura.
+
+        Add [NoStaticTables] attribute to CloseEvent interface definition. This attribute
+        makes the code generator obtain the attributes table used for building ClassInfo
+        through JSGlobalData, instead of directly using a statically-allocated table.
+
+        Generally speaking, NoStaticTables needs to be specified in interfaces which
+        may be accessed from workers.
+
+        Tests: http/tests/websocket/tests/hybi/workers/shared-worker-simple.html (updated)
+               http/tests/websocket/tests/hybi/workers/worker-simple.html (updated)
+
+        * websockets/CloseEvent.idl: Fixed the formatting, too.
+
 2011-07-26  James Robinson  <[email protected]>
 
         [chromium] REGRESSION(90963): Content layers are not redrawn after losing the compositor context

Modified: trunk/Source/WebCore/websockets/CloseEvent.idl (91825 => 91826)


--- trunk/Source/WebCore/websockets/CloseEvent.idl	2011-07-27 07:12:38 UTC (rev 91825)
+++ trunk/Source/WebCore/websockets/CloseEvent.idl	2011-07-27 08:56:58 UTC (rev 91826)
@@ -30,12 +30,14 @@
 
 module events {
 
-    interface CloseEvent : Event {
-    readonly attribute boolean wasClean;
-    void initCloseEvent(in [Optional=CallWithDefaultValue] DOMString typeArg,
-                        in [Optional=CallWithDefaultValue] boolean canBubbleArg,
-                        in [Optional=CallWithDefaultValue] boolean cancelableArg,
-                        in [Optional=CallWithDefaultValue] boolean wasCleanArg);
-};
+    interface [
+        NoStaticTables
+    ] CloseEvent : Event {
+        readonly attribute boolean wasClean;
+        void initCloseEvent(in [Optional=CallWithDefaultValue] DOMString typeArg,
+                            in [Optional=CallWithDefaultValue] boolean canBubbleArg,
+                            in [Optional=CallWithDefaultValue] boolean cancelableArg,
+                            in [Optional=CallWithDefaultValue] boolean wasCleanArg);
+    };
 
 }
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to