Boost logo

Boost Users :

Subject: Re: [Boost-users] Inconsistent unicode encoding between boost andwxonmac osx
From: Sachin Garg (schngrg_at_[hidden])
Date: 2010-02-14 03:09:31


On Sun, Feb 14, 2010 at 1:24 PM, Vladimir Prus
<vladimir_at_[hidden]> wrote:
> Sachin Garg wrote:
>
>>> I don't think that this has anything to do with normalization. By looking at
>>> the source, Filesystem, by default, uses the global locale to convert betwen
>>> narrow and wide paths, and the default locale in your case seems to perform
>>> no conversion. That is, it just takes every 8 bit char and converts it to a
>>> 32 bit wchar_t. This, of course, doesn't work when the source is UTF-8,
>>> regardless of its normalization.
>>
>> It looks like you are correct, thanks :-)
>>
>> I added this to my code and it fixes the problem:
>>
>>   std::locale global_loc = std::locale();
>>   boost::filesystem::detail::utf8_codecvt_facet utf8_facet(1);
>>   std::locale loc(global_loc, &utf8_facet);
>>   boost::filesystem::wpath_traits::imbue(loc);
>>
>> Taken from:
>>   http://archives.free.net.ph/message/20071110.132150.af9dc620.en.html
>>
>> And it seems this is an issue since atleast 2007,
>
> Filing an issue on http://svn.boost.org generally increases the chances
> that something will be fixed. Of course, please try to provide a detailed
> description.

I have filed a bug, please add any information if my description isn't
complete enough.

  https://svn.boost.org/trac/boost/ticket/3928

SG


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net