perl giving setlocale failures with recent cygwin's, Egor please comment?
Christopher Faylor
cgf@redhat.com
Thu Aug 29 07:55:00 GMT 2002
On Thu, Aug 29, 2002 at 04:44:41PM +0200, Corinna Vinschen wrote:
>On Thu, Aug 29, 2002 at 10:34:25AM -0400, Chris Faylor wrote:
>> On Thu, Aug 29, 2002 at 10:58:47PM +0900, Kazuhiro Fujieda wrote:
>> >>>> On Thu, 29 Aug 2002 12:56:52 +0400
>> >>>> egor duda <deo@logos-m.ru> said:
>> >
>> >> Yes, it's definitely so. Previously, setlocale (LC_CTYPE, "") was
>> >> returning "C", while now, in MB_CAPABLE configuration, it returns NULL.
>> >>
>> >> I'm not sure whether it's better to fix it in newlib or in perl, though.
>> >
>> >setlocale(category, "") commonly returns "C" when any relevant
>> >environment variables aren't set. The MB_CAPABLE version of
>> >setlocale should be fixed.
>>
>> Is it not doing that? AFAICT, that's how it works.
>
>AFAICS, it doesn't init itself by getting the env. vars settings.
>In the special case of setlocale(LC_ALL, "") it initializes itself
>to the "C" locale instead. But all other setlocale(LC_xxx, "")
>return NULL.
It's not that simple. In the case of LC_CTYPE and LC_MESSAGES, in
the perl usage, it will return NULL. It returns "C" for everything
else.
This function differs a lot from the BSD function of the same name.
I wonder if just importing a newer version from BSD would solve
the problem.
cgf
More information about the Cygwin-developers
mailing list