Title: [202031] trunk/Source/WebCore
Revision
202031
Author
[email protected]
Date
2016-06-13 23:18:32 -0700 (Mon, 13 Jun 2016)

Log Message

Remove hasStaticPropertyTable (part 4: JSHTMLDocument & JSStorage)
https://bugs.webkit.org/show_bug.cgi?id=158431

Reviewed by Chris Dumez.

All uses of hasStaticPropertyTable flag generated by bindings are wrong.

JSHTMLDocument & JSStorage contain a number of static_asserts claiming that
various methods do not support static properties. These asserts were likely
correct at the time they were added, as JSObject::getOwnPropertySlot and
JSObject::deleteProperty did not support getting / deleting static value.
This is no longer the case, and these asserts are now incorrect.

* bindings/js/JSHTMLDocumentCustom.cpp:
(WebCore::JSHTMLDocument::getOwnPropertySlot):
* bindings/js/JSStorageCustom.cpp:
(WebCore::JSStorage::deleteProperty):
(WebCore::JSStorage::deletePropertyByIndex):
(WebCore::JSStorage::putDelegate):
    - remove incorrect static_asserts.

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (202030 => 202031)


--- trunk/Source/WebCore/ChangeLog	2016-06-14 06:17:05 UTC (rev 202030)
+++ trunk/Source/WebCore/ChangeLog	2016-06-14 06:18:32 UTC (rev 202031)
@@ -1,5 +1,28 @@
 2016-06-13  Gavin & Ellie Barraclough  <[email protected]>
 
+        Remove hasStaticPropertyTable (part 4: JSHTMLDocument & JSStorage)
+        https://bugs.webkit.org/show_bug.cgi?id=158431
+
+        Reviewed by Chris Dumez.
+
+        All uses of hasStaticPropertyTable flag generated by bindings are wrong.
+
+        JSHTMLDocument & JSStorage contain a number of static_asserts claiming that
+        various methods do not support static properties. These asserts were likely
+        correct at the time they were added, as JSObject::getOwnPropertySlot and
+        JSObject::deleteProperty did not support getting / deleting static value.
+        This is no longer the case, and these asserts are now incorrect.
+
+        * bindings/js/JSHTMLDocumentCustom.cpp:
+        (WebCore::JSHTMLDocument::getOwnPropertySlot):
+        * bindings/js/JSStorageCustom.cpp:
+        (WebCore::JSStorage::deleteProperty):
+        (WebCore::JSStorage::deletePropertyByIndex):
+        (WebCore::JSStorage::putDelegate):
+            - remove incorrect static_asserts.
+
+2016-06-13  Gavin & Ellie Barraclough  <[email protected]>
+
         Remove hasStaticPropertyTable (part 3: JSLocation::putDelegate)
         https://bugs.webkit.org/show_bug.cgi?id=158431
 

Modified: trunk/Source/WebCore/bindings/js/JSHTMLDocumentCustom.cpp (202030 => 202031)


--- trunk/Source/WebCore/bindings/js/JSHTMLDocumentCustom.cpp	2016-06-14 06:17:05 UTC (rev 202030)
+++ trunk/Source/WebCore/bindings/js/JSHTMLDocumentCustom.cpp	2016-06-14 06:18:32 UTC (rev 202031)
@@ -89,8 +89,6 @@
         return true;
     }
 
-    static_assert(!hasStaticPropertyTable, "This method does not handle static instance properties");
-
     return Base::getOwnPropertySlot(thisObject, exec, propertyName, slot);
 }
 

Modified: trunk/Source/WebCore/bindings/js/JSStorageCustom.cpp (202030 => 202031)


--- trunk/Source/WebCore/bindings/js/JSStorageCustom.cpp	2016-06-14 06:17:05 UTC (rev 202030)
+++ trunk/Source/WebCore/bindings/js/JSStorageCustom.cpp	2016-06-14 06:18:32 UTC (rev 202031)
@@ -59,8 +59,6 @@
     // the native property slots manually.
     PropertySlot slot(thisObject, PropertySlot::InternalMethodType::GetOwnProperty);
 
-    static_assert(!hasStaticPropertyTable, "This function does not handle static instance properties");
-
     JSValue prototype = thisObject->getPrototypeDirect();
     if (prototype.isObject() && asObject(prototype)->getPropertySlot(exec, propertyName, slot))
         return Base::deleteProperty(thisObject, exec, propertyName);
@@ -76,7 +74,6 @@
 
 bool JSStorage::deletePropertyByIndex(JSCell* cell, ExecState* exec, unsigned propertyName)
 {
-    static_assert(!hasStaticPropertyTable, "This function does not handle static instance properties");
     return deleteProperty(cell, exec, Identifier::from(exec, propertyName));
 }
 
@@ -104,7 +101,6 @@
     // Since hasProperty() would end up calling canGetItemsForName() and be fooled, we need to check
     // the native property slots manually.
     PropertySlot slot(this, PropertySlot::InternalMethodType::GetOwnProperty);
-    static_assert(!hasStaticPropertyTable, "This function does not handle static instance properties");
 
     JSValue prototype = this->getPrototypeDirect();
     if (prototype.isObject() && asObject(prototype)->getPropertySlot(exec, propertyName, slot))
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to