Changeset 56560 in webkit for trunk/JavaScriptCore/runtime
- Timestamp:
- Mar 25, 2010, 11:20:17 AM (15 years ago)
- Location:
- trunk/JavaScriptCore/runtime
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/runtime/DateConversion.cpp
r52028 r56560 57 57 if (date == exec->globalData().cachedDateString) 58 58 return exec->globalData().cachedDateStringValue; 59 double value = parseDateFromNullTerminatedCharacters(exec, date.UTF8String(). c_str());59 double value = parseDateFromNullTerminatedCharacters(exec, date.UTF8String().data()); 60 60 exec->globalData().cachedDateString = date; 61 61 exec->globalData().cachedDateStringValue = value; -
trunk/JavaScriptCore/runtime/JSGlobalObjectFunctions.cpp
r55093 r56560 56 56 UString str = args.at(0).toString(exec); 57 57 CString cstr = str.UTF8String(true); 58 if (!cstr. c_str())58 if (!cstr.data()) 59 59 return throwError(exec, URIError, "String contained an illegal UTF-16 sequence."); 60 60 61 61 JSStringBuilder builder; 62 const char* p = cstr. c_str();63 for (size_t k = 0; k < cstr. size(); k++, p++) {62 const char* p = cstr.data(); 63 for (size_t k = 0; k < cstr.length(); k++, p++) { 64 64 char c = *p; 65 65 if (c && strchr(doNotEscape, c)) … … 431 431 JSValue JSC_HOST_CALL globalFuncJSCPrint(ExecState* exec, JSObject*, JSValue, const ArgList& args) 432 432 { 433 CStringBuffer string; 434 args.at(0).toString(exec).getCString(string); 433 CString string = args.at(0).toString(exec).UTF8String(); 435 434 puts(string.data()); 436 435 return jsUndefined(); -
trunk/JavaScriptCore/runtime/UString.cpp
r56342 r56560 143 143 bool operator==(const CString& c1, const CString& c2) 144 144 { 145 size_t len = c1. size();146 return len == c2. size() && (len == 0 || memcmp(c1.c_str(), c2.c_str(), len) == 0);145 size_t len = c1.length(); 146 return len == c2.length() && (len == 0 || memcmp(c1.data(), c2.data(), len) == 0); 147 147 } 148 148 … … 293 293 } 294 294 295 bool UString::getCString(CStringBuffer& buffer) const296 {297 unsigned length = size();298 unsigned neededSize = length + 1;299 buffer.resize(neededSize);300 char* buf = buffer.data();301 302 UChar ored = 0;303 const UChar* p = data();304 char* q = buf;305 const UChar* limit = p + length;306 while (p != limit) {307 UChar c = p[0];308 ored |= c;309 *q = static_cast<char>(c);310 ++p;311 ++q;312 }313 *q = '\0';314 315 return !(ored & 0xFF00);316 }317 318 295 char* UString::ascii() const 319 296 { … … 369 346 } 370 347 371 // FIXME: If tolerateTrailingJunk is true, then we want to tolerate non-8-bit junk 372 // after the number, so this is too strict a check. 373 CStringBuffer s; 374 if (!getCString(s)) 375 return NaN; 348 CString s = UTF8String(); 376 349 const char* c = s.data(); 377 350 -
trunk/JavaScriptCore/runtime/UString.h
r56342 r56560 62 62 CString& operator+=(const CString& c) { return append(c); } 63 63 64 size_t size() const { return m_length; }65 const char* c_str() const { return m_data; }64 size_t length() const { return m_length; } 65 const char* data() const { return m_data; } 66 66 67 67 private: … … 113 113 static UString from(long); 114 114 static UString from(double); 115 116 bool getCString(CStringBuffer&) const;117 115 118 116 // NOTE: This method should only be used for *debugging* purposes as it
Note:
See TracChangeset
for help on using the changeset viewer.