Title: [198931] trunk/Source/WebCore
Revision
198931
Author
[email protected]
Date
2016-03-31 16:59:18 -0700 (Thu, 31 Mar 2016)

Log Message

Unreviewed, rolling out r196854.

We do not need those assertions anymore as it seems
<rdar://problem/24457478> is fixed

Reverted changeset:

"Land release assertions to help track down a possible
HTMLCollection lifetime bug"
https://bugs.webkit.org/show_bug.cgi?id=154490
http://trac.webkit.org/changeset/196854

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (198930 => 198931)


--- trunk/Source/WebCore/ChangeLog	2016-03-31 23:45:54 UTC (rev 198930)
+++ trunk/Source/WebCore/ChangeLog	2016-03-31 23:59:18 UTC (rev 198931)
@@ -1,5 +1,19 @@
 2016-03-31  Chris Dumez  <[email protected]>
 
+        Unreviewed, rolling out r196854.
+
+        We do not need those assertions anymore as it seems
+        <rdar://problem/24457478> is fixed
+
+        Reverted changeset:
+
+        "Land release assertions to help track down a possible
+        HTMLCollection lifetime bug"
+        https://bugs.webkit.org/show_bug.cgi?id=154490
+        http://trac.webkit.org/changeset/196854
+
+2016-03-31  Chris Dumez  <[email protected]>
+
         [iOS] Both WebPage's volatility timer and WebProcess's processSuspensionCleanupTimer are trying to make surfaces volatile with very short interval
         https://bugs.webkit.org/show_bug.cgi?id=156065
         <rdar://problem/25452004>

Modified: trunk/Source/WebCore/bindings/js/JSHTMLCollectionCustom.cpp (198930 => 198931)


--- trunk/Source/WebCore/bindings/js/JSHTMLCollectionCustom.cpp	2016-03-31 23:45:54 UTC (rev 198930)
+++ trunk/Source/WebCore/bindings/js/JSHTMLCollectionCustom.cpp	2016-03-31 23:59:18 UTC (rev 198931)
@@ -77,23 +77,4 @@
     return CREATE_DOM_WRAPPER(globalObject, HTMLCollection, collection);
 }
 
-// FIXME: These custom bindings are only needed temporarily to add release assertions in order to help
-// track down a possible lifetime issue (rdar://problem/24457478).
-void JSHTMLCollection::getOwnPropertyNames(JSObject* object, ExecState* state, PropertyNameArray& propertyNames, EnumerationMode mode)
-{
-    auto* thisObject = jsDynamicCast<JSHTMLCollection*>(object);
-    RELEASE_ASSERT_WITH_MESSAGE(thisObject, "Bad cast from JSObject to JSHTMLCollection");
-    RELEASE_ASSERT_WITH_MESSAGE(thisObject->wrapped().refCount() > 0, "Wrapped object is dead");
-    RELEASE_ASSERT_WITH_MESSAGE(!thisObject->wrapped().wasDeletionStarted(), "Wrapped object is being destroyed");
-    RELEASE_ASSERT_WITH_MESSAGE(!currentWorld(state).isNormal() || thisObject->wrapped().wrapper(), "Wrapper is dead");
-
-    for (unsigned i = 0, count = thisObject->wrapped().length(); i < count; ++i)
-        propertyNames.add(Identifier::from(state, i));
-    if (mode.includeDontEnumProperties()) {
-        for (auto& propertyName : thisObject->wrapped().supportedPropertyNames())
-            propertyNames.add(Identifier::fromString(state, propertyName));
-    }
-    Base::getOwnPropertyNames(thisObject, state, propertyNames, mode);
-}
-
 } // namespace WebCore

Modified: trunk/Source/WebCore/html/HTMLCollection.cpp (198930 => 198931)


--- trunk/Source/WebCore/html/HTMLCollection.cpp	2016-03-31 23:45:54 UTC (rev 198930)
+++ trunk/Source/WebCore/html/HTMLCollection.cpp	2016-03-31 23:59:18 UTC (rev 198931)
@@ -109,7 +109,6 @@
     , m_collectionType(type)
     , m_invalidationType(invalidationTypeExcludingIdAndNameAttributes(type))
     , m_rootType(rootTypeFromCollectionType(type))
-    , m_wasDeletionStarted(false)
 {
     ASSERT(m_rootType == static_cast<unsigned>(rootTypeFromCollectionType(type)));
     ASSERT(m_invalidationType == static_cast<unsigned>(invalidationTypeExcludingIdAndNameAttributes(type)));
@@ -118,8 +117,6 @@
 
 HTMLCollection::~HTMLCollection()
 {
-    m_wasDeletionStarted = true;
-
     if (hasNamedElementCache())
         document().collectionWillClearIdNameMap(*this);
 

Modified: trunk/Source/WebCore/html/HTMLCollection.h (198930 => 198931)


--- trunk/Source/WebCore/html/HTMLCollection.h	2016-03-31 23:45:54 UTC (rev 198930)
+++ trunk/Source/WebCore/html/HTMLCollection.h	2016-03-31 23:59:18 UTC (rev 198931)
@@ -85,8 +85,6 @@
 
     bool hasNamedElementCache() const;
 
-    bool wasDeletionStarted() { return m_wasDeletionStarted; }
-
 protected:
     HTMLCollection(ContainerNode& base, CollectionType);
 
@@ -110,8 +108,6 @@
     const unsigned m_collectionType : 5;
     const unsigned m_invalidationType : 4;
     const unsigned m_rootType : 1;
-    // FIXME: This flag is here temporarily to help track down a possible lifetime issue (rdar://problem/24457478).
-    unsigned m_wasDeletionStarted : 1;
 };
 
 inline ContainerNode& HTMLCollection::rootNode() const

Modified: trunk/Source/WebCore/html/HTMLCollection.idl (198930 => 198931)


--- trunk/Source/WebCore/html/HTMLCollection.idl	2016-03-31 23:45:54 UTC (rev 198930)
+++ trunk/Source/WebCore/html/HTMLCollection.idl	2016-03-31 23:59:18 UTC (rev 198931)
@@ -23,7 +23,6 @@
     GenerateIsReachable=ImplOwnerNodeRoot,
     ObjCPolymorphic,
     ReportExtraMemoryCost,
-    CustomEnumerateProperty
 ] interface HTMLCollection {
     readonly attribute unsigned long length;
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to