Ignore:
Timestamp:
Aug 13, 2010, 6:28:27 PM (15 years ago)
Author:
[email protected]
Message:

Switch String::/UString::ascii() to return a CString.

Rubber stamped by Sam Weinig.

JavaScriptCore:

(JSC::CodeBlock::dump):

  • bytecode/SamplingTool.cpp:

(JSC::SamplingTool::dump):

  • interpreter/CallFrame.cpp:

(JSC::CallFrame::dumpCaller):

  • jsc.cpp:

(runWithScripts):
(runInteractive):

  • runtime/Identifier.h:

(JSC::Identifier::ascii):

  • runtime/ScopeChain.cpp:

(JSC::ScopeChainNode::print):

  • runtime/UString.cpp:

(JSC::UString::ascii):
(JSC::UString::latin1):

  • runtime/UString.h:
  • wtf/text/StringImpl.cpp:

(WTF::StringImpl::asciiOLD):

  • wtf/text/StringImpl.h:
  • wtf/text/WTFString.cpp:

(WTF::String::ascii):
(WTF::String::latin1):

  • wtf/text/WTFString.h:

WebCore:

  • WebCore.xcodeproj/project.pbxproj:
  • bridge/c/c_class.cpp:

(JSC::Bindings::CClass::methodsNamed):
(JSC::Bindings::CClass::fieldNamed):

  • bridge/jni/jsc/JNIBridgeJSC.cpp:

(JavaField::valueFromInstance):
(JavaField::setValueToInstance):

  • bridge/jni/jsc/JavaInstanceJSC.cpp:

(JavaInstance::invokeMethod):

  • bridge/objc/objc_class.mm:

(JSC::Bindings::ObjcClass::methodsNamed):
(JSC::Bindings::ObjcClass::fieldNamed):

  • bridge/objc/objc_instance.mm:

(ObjcInstance::setValueOfUndefinedField):
(ObjcInstance::getValueOfUndefinedField):

  • loader/icon/IconRecord.cpp:
  • platform/sql/SQLiteDatabase.cpp:
  • platform/sql/SQLiteStatement.cpp:
  • storage/SQLStatement.cpp:

WebKit:

  • WebKit.xcodeproj/project.pbxproj:

WebKit/mac:

  • Plugins/Hosted/ProxyInstance.mm:

(WebKit::ProxyInstance::methodsNamed):
(WebKit::ProxyInstance::fieldNamed):

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/wtf/text/WTFString.cpp

    r65305 r65344  
    613613}
    614614
    615 Vector<char> String::ascii() const
    616 {
    617     if (m_impl)
    618         return m_impl->ascii();
    619    
    620     const char* nullMsg = "(null impl)";
    621     Vector<char, 2048> buffer;
    622     for (int i = 0; nullMsg[i]; ++i)
    623         buffer.append(nullMsg[i]);
    624    
    625     buffer.append('\0');
    626     return buffer;
    627 }
    628 
    629 CString String::latin1() const
     615CString String::ascii() const
    630616{
    631617    // Basic Latin1 (ISO) encoding - Unicode characters 0..255 are
     
    640626    for (unsigned i = 0; i < length; ++i) {
    641627        UChar ch = characters[i];
    642         characterBuffer[i] = ch > 255 ? '?' : ch;
     628        characterBuffer[i] = ch && (ch < 0x20 || ch > 0x7f) ? '?' : ch;
     629    }
     630
     631    return result;
     632}
     633
     634CString String::latin1() const
     635{
     636    // Basic Latin1 (ISO) encoding - Unicode characters 0..255 are
     637    // preserved, characters outside of this range are converted to '?'.
     638
     639    unsigned length = this->length();
     640    const UChar* characters = this->characters();
     641
     642    char* characterBuffer;
     643    CString result = CString::newUninitialized(length, characterBuffer);
     644
     645    for (unsigned i = 0; i < length; ++i) {
     646        UChar ch = characters[i];
     647        characterBuffer[i] = ch > 0xff ? '?' : ch;
    643648    }
    644649
Note: See TracChangeset for help on using the changeset viewer.