Changeset 49734 in webkit for trunk/JavaScriptCore/runtime/Structure.cpp
- Timestamp:
- Oct 16, 2009, 10:52:20 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/runtime/Structure.cpp
r49726 r49734 29 29 #include "Identifier.h" 30 30 #include "JSObject.h" 31 #include "JSPropertyNameIterator.h" 32 #include "Lookup.h" 31 33 #include "PropertyNameArray.h" 32 34 #include "StructureChain.h" 33 #include "Lookup.h"34 35 #include <wtf/RefCountedLeakCounter.h> 35 36 #include <wtf/RefPtr.h> … … 160 161 161 162 } 162 163 if (m_ cachedPropertyNameArrayData)164 m_ cachedPropertyNameArrayData->setCachedStructure(0);163 164 if (m_enumerationCache) 165 m_enumerationCache->setCachedStructure(0); 165 166 166 167 if (m_propertyTable) { … … 281 282 insertIntoPropertyMapHashTable(entry); 282 283 } 283 }284 285 void Structure::clearEnumerationCache()286 {287 if (m_cachedPropertyNameArrayData)288 m_cachedPropertyNameArrayData->setCachedStructure(0);289 m_cachedPropertyNameArrayData.clear();290 284 } 291 285 … … 553 547 size_t Structure::addPropertyWithoutTransition(const Identifier& propertyName, unsigned attributes, JSCell* specificValue) 554 548 { 549 ASSERT(!m_enumerationCache); 555 550 materializePropertyMapIfNecessary(); 556 551 … … 559 554 if (propertyStorageSize() > propertyStorageCapacity()) 560 555 growPropertyStorageCapacity(); 561 clearEnumerationCache();562 556 return offset; 563 557 } … … 566 560 { 567 561 ASSERT(isUncacheableDictionary()); 562 ASSERT(!m_enumerationCache); 568 563 569 564 materializePropertyMapIfNecessary(); … … 571 566 m_isPinnedPropertyTable = true; 572 567 size_t offset = remove(propertyName); 573 clearEnumerationCache();574 568 return offset; 575 569 }
Note:
See TracChangeset
for help on using the changeset viewer.