Changeset 51352 in webkit for trunk/JavaScriptCore/runtime/JSONObject.cpp
- Timestamp:
- Nov 24, 2009, 1:41:53 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/runtime/JSONObject.cpp
r47857 r51352 71 71 72 72 private: 73 typedef UString StringBuilder; 73 class StringBuilder : public Vector<UChar> { 74 public: 75 using Vector<UChar>::append; 76 77 inline void append(const char* str) 78 { 79 size_t len = strlen(str); 80 reserveCapacity(size() + len); 81 for (size_t i = 0; i < len; i++) 82 Vector<UChar>::append(str[i]); 83 } 84 85 inline void append(const UString& str) 86 { 87 append(str.data(), str.size()); 88 } 89 }; 74 90 75 91 class Holder { … … 270 286 return jsNull(); 271 287 272 return jsString(m_exec, result); 288 result.shrinkToFit(); 289 size_t length = result.size(); 290 return jsString(m_exec, UString(result.releaseBuffer(), length, false)); 273 291 } 274 292 … … 587 605 // In this case we don't want the separator and property name that we 588 606 // already appended, so roll back. 589 builder = builder.substr(0,rollBackPoint);607 builder.resize(rollBackPoint); 590 608 break; 591 609 }
Note:
See TracChangeset
for help on using the changeset viewer.