| Index: core/src/fxcrt/fx_basic_bstring.cpp
|
| diff --git a/core/src/fxcrt/fx_basic_bstring.cpp b/core/src/fxcrt/fx_basic_bstring.cpp
|
| index e0d1146068f703909814fcf5cc2fd7eb66c3e0b7..85e504109574ad6c511af8d85c0b8511c48e68c4 100644
|
| --- a/core/src/fxcrt/fx_basic_bstring.cpp
|
| +++ b/core/src/fxcrt/fx_basic_bstring.cpp
|
| @@ -910,25 +910,20 @@ CFX_WideString CFX_ByteString::UTF8Decode() const {
|
| }
|
| return decoder.GetResult();
|
| }
|
| +
|
| +// static
|
| CFX_ByteString CFX_ByteString::FromUnicode(const FX_WCHAR* str,
|
| FX_STRSIZE len) {
|
| - if (len < 0) {
|
| - len = FXSYS_wcslen(str);
|
| - }
|
| - CFX_ByteString bstr;
|
| - bstr.ConvertFrom(CFX_WideString(str, len));
|
| - return bstr;
|
| + FX_STRSIZE str_len = len >= 0 ? len : FXSYS_wcslen(str);
|
| + return FromUnicode(CFX_WideString(str, str_len));
|
| }
|
| +
|
| +// static
|
| CFX_ByteString CFX_ByteString::FromUnicode(const CFX_WideString& str) {
|
| - return FromUnicode(str.c_str(), str.GetLength());
|
| -}
|
| -void CFX_ByteString::ConvertFrom(const CFX_WideString& str,
|
| - CFX_CharMap* pCharMap) {
|
| - if (!pCharMap) {
|
| - pCharMap = CFX_CharMap::GetDefaultMapper();
|
| - }
|
| - *this = (*pCharMap->m_GetByteString)(pCharMap, str);
|
| + CFX_CharMap* pCharMap = CFX_CharMap::GetDefaultMapper();
|
| + return (*pCharMap->m_GetByteString)(pCharMap, str);
|
| }
|
| +
|
| int CFX_ByteString::Compare(const CFX_ByteStringC& str) const {
|
| if (!m_pData) {
|
| return str.IsEmpty() ? 0 : -1;
|
|
|