Ignore:
Timestamp:
Oct 16, 2009, 10:52:20 PM (16 years ago)
Author:
[email protected]
Message:

Rolled back in r49717 with the build maybe working now?

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/runtime/Structure.cpp

    r49726 r49734  
    2929#include "Identifier.h"
    3030#include "JSObject.h"
     31#include "JSPropertyNameIterator.h"
     32#include "Lookup.h"
    3133#include "PropertyNameArray.h"
    3234#include "StructureChain.h"
    33 #include "Lookup.h"
    3435#include <wtf/RefCountedLeakCounter.h>
    3536#include <wtf/RefPtr.h>
     
    160161
    161162    }
    162 
    163     if (m_cachedPropertyNameArrayData)
    164         m_cachedPropertyNameArrayData->setCachedStructure(0);
     163   
     164    if (m_enumerationCache)
     165        m_enumerationCache->setCachedStructure(0);
    165166
    166167    if (m_propertyTable) {
     
    281282        insertIntoPropertyMapHashTable(entry);
    282283    }
    283 }
    284 
    285 void Structure::clearEnumerationCache()
    286 {
    287     if (m_cachedPropertyNameArrayData)
    288         m_cachedPropertyNameArrayData->setCachedStructure(0);
    289     m_cachedPropertyNameArrayData.clear();
    290284}
    291285
     
    553547size_t Structure::addPropertyWithoutTransition(const Identifier& propertyName, unsigned attributes, JSCell* specificValue)
    554548{
     549    ASSERT(!m_enumerationCache);
    555550    materializePropertyMapIfNecessary();
    556551
     
    559554    if (propertyStorageSize() > propertyStorageCapacity())
    560555        growPropertyStorageCapacity();
    561     clearEnumerationCache();
    562556    return offset;
    563557}
     
    566560{
    567561    ASSERT(isUncacheableDictionary());
     562    ASSERT(!m_enumerationCache);
    568563
    569564    materializePropertyMapIfNecessary();
     
    571566    m_isPinnedPropertyTable = true;
    572567    size_t offset = remove(propertyName);
    573     clearEnumerationCache();
    574568    return offset;
    575569}
Note: See TracChangeset for help on using the changeset viewer.