diff options
author | Simon Hausmann <simon.hausmann@nokia.com> | 2012-09-10 19:10:20 +0200 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@nokia.com> | 2012-09-10 19:10:20 +0200 |
commit | 284837daa07b29d6a63a748544a90b1f5842ac5c (patch) | |
tree | ecd258180bde91fe741e0cfd2638beb3c6da7e8e /Source/JavaScriptCore/runtime/Structure.cpp | |
parent | 2e2ba8ff45915f40ed3e014101269c175f2a89a0 (diff) | |
download | qtwebkit-284837daa07b29d6a63a748544a90b1f5842ac5c.tar.gz |
Imported WebKit commit 68645295d2e3e09af2c942f092556f06aa5f8b0d (http://svn.webkit.org/repository/webkit/trunk@128073)
New snapshot
Diffstat (limited to 'Source/JavaScriptCore/runtime/Structure.cpp')
-rw-r--r-- | Source/JavaScriptCore/runtime/Structure.cpp | 28 |
1 files changed, 10 insertions, 18 deletions
diff --git a/Source/JavaScriptCore/runtime/Structure.cpp b/Source/JavaScriptCore/runtime/Structure.cpp index e02105826..4c8ee8741 100644 --- a/Source/JavaScriptCore/runtime/Structure.cpp +++ b/Source/JavaScriptCore/runtime/Structure.cpp @@ -762,32 +762,24 @@ void Structure::visitChildren(JSCell* cell, SlotVisitor& visitor) Structure* thisObject = jsCast<Structure*>(cell); ASSERT_GC_OBJECT_INHERITS(thisObject, &s_info); ASSERT(thisObject->structure()->typeInfo().overridesVisitChildren()); + JSCell::visitChildren(thisObject, visitor); - if (thisObject->m_globalObject) - visitor.append(&thisObject->m_globalObject); + visitor.append(&thisObject->m_globalObject); if (!thisObject->isObject()) thisObject->m_cachedPrototypeChain.clear(); else { - if (thisObject->m_prototype) - visitor.append(&thisObject->m_prototype); - if (thisObject->m_cachedPrototypeChain) - visitor.append(&thisObject->m_cachedPrototypeChain); + visitor.append(&thisObject->m_prototype); + visitor.append(&thisObject->m_cachedPrototypeChain); } - if (thisObject->m_previous) - visitor.append(&thisObject->m_previous); - if (thisObject->m_specificValueInPrevious) - visitor.append(&thisObject->m_specificValueInPrevious); - if (thisObject->m_enumerationCache) - visitor.append(&thisObject->m_enumerationCache); + visitor.append(&thisObject->m_previous); + visitor.append(&thisObject->m_specificValueInPrevious); + visitor.append(&thisObject->m_enumerationCache); if (thisObject->m_propertyTable) { PropertyTable::iterator end = thisObject->m_propertyTable->end(); - for (PropertyTable::iterator ptr = thisObject->m_propertyTable->begin(); ptr != end; ++ptr) { - if (ptr->specificValue) - visitor.append(&ptr->specificValue); - } + for (PropertyTable::iterator ptr = thisObject->m_propertyTable->begin(); ptr != end; ++ptr) + visitor.append(&ptr->specificValue); } - if (thisObject->m_objectToStringValue) - visitor.append(&thisObject->m_objectToStringValue); + visitor.append(&thisObject->m_objectToStringValue); } #if DO_PROPERTYMAP_CONSTENCY_CHECK |