bringing back utf32 encoding for wchar, fixes #10666
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59968 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
parent
7ff1542d27
commit
2daa5d2c99
@ -613,16 +613,18 @@ wxCFStringRef::wxCFStringRef( const wxString &st , wxFontEncoding WXUNUSED_IN_UN
|
|||||||
// native = wchar_t 4 bytes for us
|
// native = wchar_t 4 bytes for us
|
||||||
const wchar_t * const data = str.wc_str();
|
const wchar_t * const data = str.wc_str();
|
||||||
const size_t size = str.length()*sizeof(wchar_t);
|
const size_t size = str.length()*sizeof(wchar_t);
|
||||||
|
CFStringBuiltInEncodings cfencoding = kCFStringEncodingUTF32Native;
|
||||||
#elif wxUSE_UNICODE_UTF8
|
#elif wxUSE_UNICODE_UTF8
|
||||||
// native = utf8
|
// native = utf8
|
||||||
const char * const data = str.utf8_str();
|
const char * const data = str.utf8_str();
|
||||||
const size_t size = str.utf8_length();
|
const size_t size = str.utf8_length();
|
||||||
|
CFStringBuiltInEncodings cfencoding = kCFStringEncodingUTF8;
|
||||||
#else
|
#else
|
||||||
#error "unsupported Unicode representation"
|
#error "unsupported Unicode representation"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
reset( CFStringCreateWithBytes( kCFAllocatorDefault,
|
reset( CFStringCreateWithBytes( kCFAllocatorDefault,
|
||||||
(const UInt8*)data, size, kCFStringEncodingUTF8, false /* no BOM */ ) );
|
(const UInt8*)data, size, cfencoding, false /* no BOM */ ) );
|
||||||
#else // not wxUSE_UNICODE
|
#else // not wxUSE_UNICODE
|
||||||
reset( CFStringCreateWithCString( kCFAllocatorSystemDefault , str.c_str() ,
|
reset( CFStringCreateWithCString( kCFAllocatorSystemDefault , str.c_str() ,
|
||||||
wxMacGetSystemEncFromFontEnc( encoding ) ) );
|
wxMacGetSystemEncFromFontEnc( encoding ) ) );
|
||||||
|
Loading…
Reference in New Issue
Block a user