Non portable std::wstring in CIccTagDict and CIccDictEntry
Brought to you by:
maxderhak
Non portable std::wstring used in CIccTagDict and CIccDictEntry causes problems on Linux (based) operating systems.
SampleICC relies on std::wstring to represent the Name and the Value non-MLUC fields (classes CIccTagDict and CIccDictEntry), while for the MLUC Name and Value fields it uses an icUInt16Number* (class CIccLocalizedUnicode).
The character type of std::wstring is a wchar_t . The problem is that on Linux a wchar_t character is stored on 4 bytes representing an UTF-32 code-point, instead of being stored on 2 bytes representing an UTF-16 code-point as the SampleICC assumes.
Transfering CIccUTF16String class from IccLibXml