Title: [152237] branches/safari-537-branch/Source

Diff

Modified: branches/safari-537-branch/Source/_javascript_Core/ChangeLog (152236 => 152237)


--- branches/safari-537-branch/Source/_javascript_Core/ChangeLog	2013-07-01 18:54:01 UTC (rev 152236)
+++ branches/safari-537-branch/Source/_javascript_Core/ChangeLog	2013-07-01 19:14:53 UTC (rev 152237)
@@ -1,3 +1,23 @@
+2013-07-01  Lucas Forschler  <[email protected]>
+
+        Merge r151978
+
+    2013-06-25  Ryosuke Niwa  <[email protected]>
+
+            JSString should remember AtomicString
+            https://bugs.webkit.org/show_bug.cgi?id=117386
+
+            Reviewed by Geoffrey Garen.
+
+            Added JSValue::toAtomicString and JSString::atomicString. These two functions allow WebCore to update
+            JSString's m_value to set isAtomic flag and avoid the AtomicStringTable lookups in subsequent attempts
+            to obtain the AtomicString of the same value.
+
+            * runtime/JSCJSValue.h:
+            * runtime/JSString.h:
+            (JSC::JSString::atomicString):
+            (JSC::JSValue::toAtomicString):
+
 2013-06-25  Lucas Forschler  <[email protected]>
 
         Merge r151786

Modified: branches/safari-537-branch/Source/_javascript_Core/runtime/JSCJSValue.h (152236 => 152237)


--- branches/safari-537-branch/Source/_javascript_Core/runtime/JSCJSValue.h	2013-07-01 18:54:01 UTC (rev 152236)
+++ branches/safari-537-branch/Source/_javascript_Core/runtime/JSCJSValue.h	2013-07-01 19:14:53 UTC (rev 152237)
@@ -220,6 +220,7 @@
     // been set in the ExecState already.
     double toNumber(ExecState*) const;
     JSString* toString(ExecState*) const;
+    AtomicString toAtomicString(ExecState*) const;
     WTF::String toWTFString(ExecState*) const;
     WTF::String toWTFStringInline(ExecState*) const;
     JSObject* toObject(ExecState*) const;

Modified: branches/safari-537-branch/Source/_javascript_Core/runtime/JSString.h (152236 => 152237)


--- branches/safari-537-branch/Source/_javascript_Core/runtime/JSString.h	2013-07-01 18:54:01 UTC (rev 152236)
+++ branches/safari-537-branch/Source/_javascript_Core/runtime/JSString.h	2013-07-01 19:14:53 UTC (rev 152237)
@@ -139,6 +139,7 @@
     const String& value(ExecState*) const;
     const String& tryGetValue() const;
     unsigned length() { return m_length; }
+    AtomicString atomicString(ExecState*) const;
 
     JSValue toPrimitive(ExecState*, PreferredPrimitiveType) const;
     JS_EXPORT_PRIVATE bool toBoolean() const;
@@ -371,6 +372,19 @@
     return m_value;
 }
 
+inline AtomicString JSString::atomicString(ExecState* exec) const
+{
+    if (isRope()) {
+        static_cast<const JSRopeString*>(this)->resolveRope(exec);
+        if (exec->hadException())
+            return nullAtom;
+    }
+    const AtomicString atomicValue(m_value);
+    if (atomicValue.impl() != m_value.impl())
+        m_value = atomicValue;
+    return atomicValue;
+}
+
 inline const String& JSString::tryGetValue() const
 {
     if (isRope())
@@ -516,6 +530,13 @@
     return toStringSlowCase(exec);
 }
 
+inline AtomicString JSValue::toAtomicString(ExecState* exec) const
+{
+    if (isString())
+        return jsCast<JSString*>(asCell())->atomicString(exec);
+    return toStringSlowCase(exec)->value(exec);
+}
+
 inline String JSValue::toWTFString(ExecState* exec) const
 {
     if (isString())

Modified: branches/safari-537-branch/Source/WebCore/ChangeLog (152236 => 152237)


--- branches/safari-537-branch/Source/WebCore/ChangeLog	2013-07-01 18:54:01 UTC (rev 152236)
+++ branches/safari-537-branch/Source/WebCore/ChangeLog	2013-07-01 19:14:53 UTC (rev 152237)
@@ -1,3 +1,39 @@
+2013-07-01  Lucas Forschler  <[email protected]>
+
+        Merge r151978
+
+    2013-06-25  Ryosuke Niwa  <[email protected]>
+
+            JSString should remember AtomicString
+            https://bugs.webkit.org/show_bug.cgi?id=117386
+
+            Reviewed by Geoffrey Garen.
+
+            Added "Atomic" attribute as a WebKit extension to WebIDL, and deployed it in Element.idl and Node.idl so that
+            the binding code can use newly added JSValue::toAtomic to update JSString's m_value.
+
+            * bindings/js/JSDOMBinding.cpp:
+            (WebCore::valueToAtomicStringWithNullCheck): Added.
+            (WebCore::valueToAtomicStringWithUndefinedOrNullCheck): Added.
+
+            * bindings/js/JSDOMBinding.h:
+
+            * bindings/scripts/CodeGeneratorJS.pm:
+            (GetNativeTypeFromSignature): Return const AtomicString& when either Atomic attribute is specified or the type is
+            Reflect. Note that setAttribute and getAttribute both use AtomicString for all arguments.
+            (JSValueToNative): Use AtomicString equivalents when possible when converting DOMString to a WebCore object.
+
+            * bindings/scripts/IDLAttributes.txt: Added "Atomic" attribute.
+
+            * bindings/scripts/test/JS/JSTestObj.cpp: Baselined test cases.
+            (WebCore::setJSTestObjReflectedStringAttr):
+            (WebCore::setJSTestObjReflectedURLAttr):
+            (WebCore::setJSTestObjReflectedCustomURLAttr):
+
+            * dom/Document.idl:
+            * dom/Element.idl:
+            * dom/Node.idl:
+
 2013-06-27  Lucas Forschler  <[email protected]>
 
         Merge r152038

Modified: branches/safari-537-branch/Source/WebCore/bindings/js/JSDOMBinding.cpp (152236 => 152237)


--- branches/safari-537-branch/Source/WebCore/bindings/js/JSDOMBinding.cpp	2013-07-01 18:54:01 UTC (rev 152236)
+++ branches/safari-537-branch/Source/WebCore/bindings/js/JSDOMBinding.cpp	2013-07-01 19:14:53 UTC (rev 152237)
@@ -109,6 +109,13 @@
     return value.toString(exec)->value(exec);
 }
 
+AtomicString valueToAtomicStringWithNullCheck(ExecState* exec, JSValue value)
+{
+    if (value.isNull())
+        return nullAtom;
+    return value.toAtomicString(exec);
+}
+
 String valueToStringWithUndefinedOrNullCheck(ExecState* exec, JSValue value)
 {
     if (value.isUndefinedOrNull())
@@ -116,6 +123,13 @@
     return value.toString(exec)->value(exec);
 }
 
+AtomicString valueToAtomicStringWithUndefinedOrNullCheck(ExecState* exec, JSValue value)
+{
+    if (value.isUndefinedOrNull())
+        return nullAtom;
+    return value.toAtomicString(exec);
+}
+
 JSValue jsDateOrNull(ExecState* exec, double value)
 {
     if (!std::isfinite(value))

Modified: branches/safari-537-branch/Source/WebCore/bindings/js/JSDOMBinding.h (152236 => 152237)


--- branches/safari-537-branch/Source/WebCore/bindings/js/JSDOMBinding.h	2013-07-01 18:54:01 UTC (rev 152236)
+++ branches/safari-537-branch/Source/WebCore/bindings/js/JSDOMBinding.h	2013-07-01 19:14:53 UTC (rev 152237)
@@ -249,7 +249,10 @@
     AtomicStringImpl* findAtomicString(JSC::PropertyName);
 
     String valueToStringWithNullCheck(JSC::ExecState*, JSC::JSValue); // null if the value is null
+    AtomicString valueToAtomicStringWithNullCheck(JSC::ExecState*, JSC::JSValue);
+
     String valueToStringWithUndefinedOrNullCheck(JSC::ExecState*, JSC::JSValue); // null if the value is null or undefined
+    AtomicString valueToAtomicStringWithUndefinedOrNullCheck(JSC::ExecState*, JSC::JSValue);
 
     inline int32_t finiteInt32Value(JSC::JSValue value, JSC::ExecState* exec, bool& okay)
     {

Modified: branches/safari-537-branch/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm (152236 => 152237)


--- branches/safari-537-branch/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm	2013-07-01 18:54:01 UTC (rev 152236)
+++ branches/safari-537-branch/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm	2013-07-01 19:14:53 UTC (rev 152237)
@@ -3364,6 +3364,11 @@
         return "int";
     }
 
+    # FIXME: GetNativeType should support Atomic extension.
+    if ($type eq "DOMString" and ($signature->extendedAttributes->{"Atomic"} or $signature->extendedAttributes->{"Reflect"})) {
+        return "const AtomicString&";
+    }
+
     return GetNativeType($type);
 }
 
@@ -3503,12 +3508,23 @@
     if ($type eq "DOMString") {
         # FIXME: This implements [TreatNullAs=NullString] and [TreatUndefinedAs=NullString],
         # but the Web IDL spec requires [TreatNullAs=EmptyString] and [TreatUndefinedAs=EmptyString].
-        if (($signature->extendedAttributes->{"TreatNullAs"} and $signature->extendedAttributes->{"TreatNullAs"} eq "NullString") and ($signature->extendedAttributes->{"TreatUndefinedAs"} and $signature->extendedAttributes->{"TreatUndefinedAs"} eq "NullString")) {
-            return "valueToStringWithUndefinedOrNullCheck(exec, $value)"
+        if (($signature->extendedAttributes->{"TreatNullAs"} and $signature->extendedAttributes->{"TreatNullAs"} eq "NullString")
+            and ($signature->extendedAttributes->{"TreatUndefinedAs"} and $signature->extendedAttributes->{"TreatUndefinedAs"} eq "NullString")) {
+            if ($signature->extendedAttributes->{"Atomic"}) {
+                return "valueToStringWithUndefinedOrNullCheck(exec, $value)";
+            } else {
+                return "valueToAtomicStringWithUndefinedOrNullCheck(exec, $value)";
+            }
         }
-        if (($signature->extendedAttributes->{"TreatNullAs"} and $signature->extendedAttributes->{"TreatNullAs"} eq "NullString") or $signature->extendedAttributes->{"Reflect"}) {
-            return "valueToStringWithNullCheck(exec, $value)"
+        if ($signature->extendedAttributes->{"Reflect"}) {
+            return "valueToAtomicStringWithNullCheck(exec, $value)";
         }
+        if ($signature->extendedAttributes->{"TreatNullAs"} and $signature->extendedAttributes->{"TreatNullAs"} eq "NullString") {
+            return "valueToStringWithNullCheck(exec, $value)";
+        }
+        if ($signature->extendedAttributes->{"Atomic"}) {
+            return "$value.isEmpty() ? nullAtom : $value.toAtomicString(exec)";
+        }
         # FIXME: Add the case for 'if ($signature->extendedAttributes->{"TreatUndefinedAs"} and $signature->extendedAttributes->{"TreatUndefinedAs"} eq "NullString"))'.
         return "$value.isEmpty() ? String() : $value.toString(exec)->value(exec)";
     }

Modified: branches/safari-537-branch/Source/WebCore/bindings/scripts/IDLAttributes.txt (152236 => 152237)


--- branches/safari-537-branch/Source/WebCore/bindings/scripts/IDLAttributes.txt	2013-07-01 18:54:01 UTC (rev 152236)
+++ branches/safari-537-branch/Source/WebCore/bindings/scripts/IDLAttributes.txt	2013-07-01 19:14:53 UTC (rev 152237)
@@ -19,6 +19,7 @@
 #
 
 ActiveDOMObject
+Atomic
 CPPPureInterface
 CachedAttribute
 CallWith=ScriptExecutionContext|ScriptState|ScriptArguments|CallStack

Modified: branches/safari-537-branch/Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp (152236 => 152237)


--- branches/safari-537-branch/Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp	2013-07-01 18:54:01 UTC (rev 152236)
+++ branches/safari-537-branch/Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp	2013-07-01 19:14:53 UTC (rev 152237)
@@ -1278,7 +1278,7 @@
     UNUSED_PARAM(exec);
     JSTestObj* castedThis = jsCast<JSTestObj*>(thisObject);
     TestObj* impl = static_cast<TestObj*>(castedThis->impl());
-    const String& nativeValue(valueToStringWithNullCheck(exec, value));
+    const AtomicString& nativeValue(valueToAtomicStringWithNullCheck(exec, value));
     if (exec->hadException())
         return;
     impl->setAttribute(WebCore::HTMLNames::reflectedstringattrAttr, nativeValue);
@@ -1326,7 +1326,7 @@
     UNUSED_PARAM(exec);
     JSTestObj* castedThis = jsCast<JSTestObj*>(thisObject);
     TestObj* impl = static_cast<TestObj*>(castedThis->impl());
-    const String& nativeValue(valueToStringWithNullCheck(exec, value));
+    const AtomicString& nativeValue(valueToAtomicStringWithNullCheck(exec, value));
     if (exec->hadException())
         return;
     impl->setAttribute(WebCore::HTMLNames::reflectedurlattrAttr, nativeValue);
@@ -1338,7 +1338,7 @@
     UNUSED_PARAM(exec);
     JSTestObj* castedThis = jsCast<JSTestObj*>(thisObject);
     TestObj* impl = static_cast<TestObj*>(castedThis->impl());
-    const String& nativeValue(valueToStringWithNullCheck(exec, value));
+    const AtomicString& nativeValue(valueToAtomicStringWithNullCheck(exec, value));
     if (exec->hadException())
         return;
     impl->setAttribute(WebCore::HTMLNames::customContentStringAttrAttr, nativeValue);
@@ -1374,7 +1374,7 @@
     UNUSED_PARAM(exec);
     JSTestObj* castedThis = jsCast<JSTestObj*>(thisObject);
     TestObj* impl = static_cast<TestObj*>(castedThis->impl());
-    const String& nativeValue(valueToStringWithNullCheck(exec, value));
+    const AtomicString& nativeValue(valueToAtomicStringWithNullCheck(exec, value));
     if (exec->hadException())
         return;
     impl->setAttribute(WebCore::HTMLNames::customContentURLAttrAttr, nativeValue);

Modified: branches/safari-537-branch/Source/WebCore/dom/Document.idl (152236 => 152237)


--- branches/safari-537-branch/Source/WebCore/dom/Document.idl	2013-07-01 18:54:01 UTC (rev 152236)
+++ branches/safari-537-branch/Source/WebCore/dom/Document.idl	2013-07-01 19:14:53 UTC (rev 152237)
@@ -29,7 +29,7 @@
     readonly attribute DOMImplementation implementation;
     readonly attribute Element documentElement;
 
-    [ReturnNewObject, RaisesException] Element createElement([TreatNullAs=NullString,Default=Undefined] optional DOMString tagName);
+    [ReturnNewObject, RaisesException] Element createElement([TreatNullAs=NullString,Default=Undefined,Atomic] optional DOMString tagName);
     DocumentFragment   createDocumentFragment();
     [ReturnNewObject] Text createTextNode([Default=Undefined] optional DOMString data);
     [ReturnNewObject] Comment createComment([Default=Undefined] optional DOMString data);
@@ -38,7 +38,7 @@
                                                                                  [Default=Undefined] optional DOMString data);
     [ReturnNewObject, RaisesException] Attr createAttribute([Default=Undefined] optional DOMString name);
     [ReturnNewObject, RaisesException] EntityReference createEntityReference([Default=Undefined] optional DOMString name);
-    NodeList getElementsByTagName([Default=Undefined] optional DOMString tagname);
+    NodeList getElementsByTagName([Default=Undefined, Atomic] optional DOMString tagname);
 
     // Introduced in DOM Level 2:
 
@@ -48,9 +48,9 @@
                             [TreatNullAs=NullString,Default=Undefined] optional DOMString qualifiedName);
     [ObjCLegacyUnnamedParameters, ReturnNewObject, RaisesException] Attr createAttributeNS([TreatNullAs=NullString,Default=Undefined] optional DOMString namespaceURI,
                                                                           [TreatNullAs=NullString,Default=Undefined] optional DOMString qualifiedName);
-    [ObjCLegacyUnnamedParameters] NodeList getElementsByTagNameNS([TreatNullAs=NullString,Default=Undefined] optional DOMString namespaceURI,
-                                                   [Default=Undefined] optional DOMString localName);
-    Element getElementById([Default=Undefined] optional DOMString elementId);
+    [ObjCLegacyUnnamedParameters] NodeList getElementsByTagNameNS([TreatNullAs=NullString,Default=Undefined,Atomic] optional DOMString namespaceURI,
+                                                   [Default=Undefined,Atomic] optional DOMString localName);
+    Element getElementById([Default=Undefined,Atomic] optional DOMString elementId);
 
     // DOM Level 3 Core
 
@@ -216,8 +216,8 @@
     readonly attribute DOMString compatMode;
 
     // NodeSelector - Selector API
-    [RaisesException] Element querySelector(DOMString selectors);
-    [RaisesException] NodeList querySelectorAll(DOMString selectors);
+    [RaisesException] Element querySelector([Atomic] DOMString selectors);
+    [RaisesException] NodeList querySelectorAll([Atomic] DOMString selectors);
 
 #if defined(ENABLE_FULLSCREEN_API) && ENABLE_FULLSCREEN_API
     // Mozilla version
@@ -338,9 +338,9 @@
 
 #if defined(ENABLE_CUSTOM_ELEMENTS) && ENABLE_CUSTOM_ELEMENTS
     [Conditional=CUSTOM_ELEMENTS, ImplementedAs=registerElement, CallWith=ScriptState, RaisesException] CustomElementConstructor webkitRegister(DOMString name, optional Dictionary options);
-    [ReturnNewObject, RaisesException] Element createElement(DOMString localName, [TreatNullAs=NullString] DOMString typeExtension);
-    [ReturnNewObject, RaisesException] Element createElementNS([TreatNullAs=NullString] DOMString namespaceURI, DOMString qualifiedName,
-                            [TreatNullAs=NullString] DOMString typeExtension);
+    [ReturnNewObject, RaisesException] Element createElement([Atomic] DOMString localName, [TreatNullAs=NullString, Atomic] DOMString typeExtension);
+    [ReturnNewObject, RaisesException] Element createElementNS([TreatNullAs=NullString, Atomic] DOMString namespaceURI, DOMString qualifiedName,
+                            [TreatNullAs=NullString, Atomic] DOMString typeExtension);
 #endif
 
 #if defined(LANGUAGE_CPP) && LANGUAGE_CPP

Modified: branches/safari-537-branch/Source/WebCore/dom/Element.idl (152236 => 152237)


--- branches/safari-537-branch/Source/WebCore/dom/Element.idl	2013-07-01 18:54:01 UTC (rev 152236)
+++ branches/safari-537-branch/Source/WebCore/dom/Element.idl	2013-07-01 19:14:53 UTC (rev 152237)
@@ -27,14 +27,14 @@
 
     [TreatReturnedNullStringAs=Null] readonly attribute DOMString tagName;
 
-    [TreatReturnedNullStringAs=Null] DOMString getAttribute([Default=Undefined] optional DOMString name);
-    [ObjCLegacyUnnamedParameters, RaisesException] void setAttribute([Default=Undefined] optional DOMString name,
-                                     [Default=Undefined] optional DOMString value);
-    void removeAttribute([Default=Undefined] optional DOMString name);
-    Attr getAttributeNode([Default=Undefined] optional DOMString name);
+    [TreatReturnedNullStringAs=Null] DOMString getAttribute([Default=Undefined, Atomic] optional DOMString name);
+    [ObjCLegacyUnnamedParameters, RaisesException] void setAttribute([Default=Undefined, Atomic] optional DOMString name,
+                                     [Default=Undefined, Atomic] optional DOMString value);
+    void removeAttribute([Default=Undefined, Atomic] optional DOMString name);
+    Attr getAttributeNode([Default=Undefined, Atomic] optional DOMString name);
     [RaisesException] Attr setAttributeNode([Default=Undefined] optional Attr newAttr);
     [RaisesException] Attr removeAttributeNode([Default=Undefined] optional Attr oldAttr);
-    NodeList getElementsByTagName([Default=Undefined] optional DOMString name);
+    NodeList getElementsByTagName([Default=Undefined, Atomic] optional DOMString name);
 
 #if !defined(LANGUAGE_OBJECTIVE_C)
     // For ObjC this is defined on Node for legacy support.
@@ -44,21 +44,21 @@
 
     // DOM Level 2 Core
 
-    [ObjCLegacyUnnamedParameters] DOMString getAttributeNS([TreatNullAs=NullString,Default=Undefined] optional DOMString namespaceURI,
-                                            [Default=Undefined] optional DOMString localName);
-    [ObjCLegacyUnnamedParameters, RaisesException] void setAttributeNS([TreatNullAs=NullString,Default=Undefined] optional DOMString namespaceURI,
-                                       [Default=Undefined] optional DOMString qualifiedName, 
-                                       [Default=Undefined] optional DOMString value);
-    [ObjCLegacyUnnamedParameters] void removeAttributeNS([TreatNullAs=NullString] DOMString namespaceURI,
-                                          DOMString localName);
-    [ObjCLegacyUnnamedParameters] NodeList getElementsByTagNameNS([TreatNullAs=NullString,Default=Undefined] optional DOMString namespaceURI,
-                                                   [Default=Undefined] optional DOMString localName);
-    [ObjCLegacyUnnamedParameters] Attr getAttributeNodeNS([TreatNullAs=NullString,Default=Undefined] optional DOMString namespaceURI,
-                                           [Default=Undefined] optional DOMString localName);
+    [ObjCLegacyUnnamedParameters] DOMString getAttributeNS([TreatNullAs=NullString, Default=Undefined, Atomic] optional DOMString namespaceURI,
+                                            [Default=Undefined, Atomic] optional DOMString localName);
+    [ObjCLegacyUnnamedParameters, RaisesException] void setAttributeNS([TreatNullAs=NullString, Default=Undefined, Atomic] optional DOMString namespaceURI,
+                                       [Default=Undefined, Atomic] optional DOMString qualifiedName, 
+                                       [Default=Undefined, Atomic] optional DOMString value);
+    [ObjCLegacyUnnamedParameters] void removeAttributeNS([TreatNullAs=NullString, Atomic] DOMString namespaceURI,
+                                          [Atomic] DOMString localName);
+    [ObjCLegacyUnnamedParameters] NodeList getElementsByTagNameNS([TreatNullAs=NullString, Default=Undefined, Atomic] optional DOMString namespaceURI,
+                                                   [Default=Undefined, Atomic] optional DOMString localName);
+    [ObjCLegacyUnnamedParameters] Attr getAttributeNodeNS([TreatNullAs=NullString, Default=Undefined, Atomic] optional DOMString namespaceURI,
+                                           [Default=Undefined, Atomic] optional DOMString localName);
     [RaisesException] Attr setAttributeNodeNS([Default=Undefined] optional Attr newAttr);
     boolean hasAttribute(DOMString name);
-    [ObjCLegacyUnnamedParameters] boolean hasAttributeNS([TreatNullAs=NullString,Default=Undefined] optional DOMString namespaceURI,
-                                          [Default=Undefined] optional DOMString localName);
+    [ObjCLegacyUnnamedParameters] boolean hasAttributeNS([TreatNullAs=NullString, Default=Undefined, Atomic] optional DOMString namespaceURI,
+                                          [Default=Undefined, Atomic] optional DOMString localName);
 
     readonly attribute CSSStyleDeclaration style;
 
@@ -99,8 +99,8 @@
 #endif
 
     // NodeSelector - Selector API
-    [RaisesException] Element querySelector(DOMString selectors);
-    [RaisesException] NodeList querySelectorAll(DOMString selectors);
+    [RaisesException] Element querySelector([Atomic] DOMString selectors);
+    [RaisesException] NodeList querySelectorAll([Atomic] DOMString selectors);
 
     // WebKit extension, pending specification.
     [RaisesException] boolean webkitMatchesSelector([Default=Undefined] optional DOMString selectors);

Modified: branches/safari-537-branch/Source/WebCore/dom/Node.idl (152236 => 152237)


--- branches/safari-537-branch/Source/WebCore/dom/Node.idl	2013-07-01 18:54:01 UTC (rev 152236)
+++ branches/safari-537-branch/Source/WebCore/dom/Node.idl	2013-07-01 19:14:53 UTC (rev 152237)
@@ -126,10 +126,10 @@
 
 #if !defined(LANGUAGE_CPP) || !LANGUAGE_CPP
 #if !defined(LANGUAGE_OBJECTIVE_C) || !LANGUAGE_OBJECTIVE_C
-    void addEventListener(DOMString type, 
+    void addEventListener([Atomic] DOMString type, 
                           EventListener listener, 
                           optional boolean useCapture);
-    void removeEventListener(DOMString type, 
+    void removeEventListener([Atomic] DOMString type, 
                              EventListener listener, 
                              optional boolean useCapture);
     [RaisesException] boolean dispatchEvent(Event event);
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to