Re: -fshort-wchar option, wchar_t and Native<->Unicode conversion
Darin Fisher <[email protected]> Thu, 22 May 2003 18:37:38 -0700
| Newsgroups | gmane.comp.mozilla.internationalization,gmane.comp.mozilla.devel.unix,gmane.comp.mozilla.devel.xpcom |
|---|---|
| Organization | Another Netscape Collabra Server User |
| Message-ID | <[email protected]> |
Yeah, I wrote that comment about mbrtowc/wcrtomb being faster, but I don't have my testcases anymore. I'm not sure how much faster it was... it might be good to construct some new tests to verify that statement ;-) Darin Jungshik Shin wrote: > Darin Fisher wrote: > > darin, > > Thanks for the comment. > > >> In > >> > http://lxr.mozilla.org/seamonkey/source/xpcom/io/nsNativeCharsetUtils.cpp#623, > > >> yeah, i'm not convinced we are doing the right thing either. what we >> do is cast each PRUnichar (in a *PRUnichar) to a wchar_t and then >> pass that to wcrtomb (one PRUnichar at a time). assuming that >> wcrtomb does indeed expect a code point from ISO 10646/Unicode, i'm >> not sure how it would handle an element of *PRUnichar. is it valid >> to zero-pad expand UTF-16 to form UCS-4? probably not, in which case >> our linux code is certainly busted. > > > Yes, it's busted although the symptom won't manifest itself in the > near future unless a brave soul makes a filename with non-BMP > characters :-) What shall we do? Is there really a big perf. penalty > if we use iconv instead of wcrtomb and mbrtowc on Linux as commented > in the source? If not, we can just make Linux build use iconv, instead. > Alternatively, we can do in-place utf-16 <-> ucs4 conversion if > wchar_t is UCS4, but wouldn't that cancel out whatever perf. gain > we're getting from not using iconv(3)? > > > Jungshik >