Changeset 52500 in webkit for trunk/JavaScriptCore/runtime/SmallStrings.cpp
- Timestamp:
- Dec 22, 2009, 2:05:17 PM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/runtime/SmallStrings.cpp
r52463 r52500 42 42 43 43 private: 44 UChar m_characters[numCharactersToStore];45 UString::Rep m_base;46 44 UString::Rep m_reps[numCharactersToStore]; 47 45 }; 48 46 49 47 SmallStringsStorage::SmallStringsStorage() 50 : m_base(m_characters, numCharactersToStore, UStringImpl::ConstructStaticString)51 48 { 52 m_base.checkConsistency(); 53 54 for (unsigned i = 0; i < numCharactersToStore; ++i) 55 m_characters[i] = i; 56 57 memset(&m_reps, 0, sizeof(m_reps)); 58 for (unsigned i = 0; i < numCharactersToStore; ++i) 59 new (&m_reps[i]) UString::Rep(m_base.data() + i, 1, &m_base); 49 UChar* characterBuffer = 0; 50 RefPtr<UStringImpl> baseString = UStringImpl::createUninitialized(numCharactersToStore, characterBuffer); 51 for (unsigned i = 0; i < numCharactersToStore; ++i) { 52 characterBuffer[i] = i; 53 new (&m_reps[i]) UString::Rep(&characterBuffer[i], 1, PassRefPtr<UStringImpl>(baseString)); 54 } 60 55 } 61 56
Note:
See TracChangeset
for help on using the changeset viewer.