| Index: core/include/fxcrt/fx_string.h
|
| diff --git a/core/include/fxcrt/fx_string.h b/core/include/fxcrt/fx_string.h
|
| index 364c510f736d35187ac0a28c4968866b89eda4d2..47e8ecdf1ea0f1eb12a5bcdc1dcc580f52606b0a 100644
|
| --- a/core/include/fxcrt/fx_string.h
|
| +++ b/core/include/fxcrt/fx_string.h
|
| @@ -640,9 +640,16 @@ public:
|
|
|
| static FX_STRSIZE WStringLength(const unsigned short* str);
|
|
|
| + // Explicit conversion to raw string
|
| + FX_LPCWSTR c_str() const
|
| + {
|
| + return m_pData ? m_pData->m_String : L"";
|
| + }
|
| +
|
| + // Implicit conversion to C-style wide string -- deprecated
|
| operator FX_LPCWSTR() const
|
| {
|
| - return m_pData ? m_pData->m_String : (FX_WCHAR*)L"";
|
| + return m_pData ? m_pData->m_String : L"";
|
| }
|
|
|
| void Empty();
|
| @@ -762,12 +769,12 @@ protected:
|
| };
|
| inline CFX_WideStringC::CFX_WideStringC(const CFX_WideString& src)
|
| {
|
| - m_Ptr = (FX_LPCWSTR)src;
|
| + m_Ptr = src.c_str();
|
| m_Length = src.GetLength();
|
| }
|
| inline CFX_WideStringC& CFX_WideStringC::operator = (const CFX_WideString& src)
|
| {
|
| - m_Ptr = (FX_LPCWSTR)src;
|
| + m_Ptr = src.c_str();
|
| m_Length = src.GetLength();
|
| return *this;
|
| }
|
| @@ -841,6 +848,6 @@ inline CFX_ByteString FX_UTF8Encode(FX_WSTR wsStr)
|
| }
|
| inline CFX_ByteString FX_UTF8Encode(const CFX_WideString &wsStr)
|
| {
|
| - return FX_UTF8Encode((FX_LPCWSTR)wsStr, wsStr.GetLength());
|
| + return FX_UTF8Encode(wsStr.c_str(), wsStr.GetLength());
|
| }
|
| #endif
|
|
|