Changeset 25527 in webkit for trunk/JavaScriptCore/API/JSStringRefCF.cpp
- Timestamp:
- Sep 12, 2007, 7:16:50 PM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/API/JSStringRefCF.cpp
r19059 r25527 40 40 JSLock lock; 41 41 CFIndex length = CFStringGetLength(string); 42 43 // Optimized path for when CFString backing store is a UTF16 buffer 44 if (const UniChar* buffer = CFStringGetCharactersPtr(string)) { 45 UString::Rep* rep = UString(reinterpret_cast<const UChar*>(buffer), length).rep()->ref(); 46 return toRef(rep); 42 UString::Rep* rep; 43 if (!length) 44 rep = UString("").rep()->ref(); 45 else { 46 UniChar* buffer = static_cast<UniChar*>(fastMalloc(sizeof(UniChar) * length)); 47 CFStringGetCharacters(string, CFRangeMake(0, length), buffer); 48 rep = UString(reinterpret_cast<UChar*>(buffer), length, false).rep()->ref(); 47 49 } 48 49 UniChar* buffer = static_cast<UniChar*>(fastMalloc(sizeof(UniChar) * length));50 CFStringGetCharacters(string, CFRangeMake(0, length), buffer);51 UString::Rep* rep = UString(reinterpret_cast<UChar*>(buffer), length, false).rep()->ref();52 50 return toRef(rep); 53 51 }
Note:
See TracChangeset
for help on using the changeset viewer.