Re: [PATCHES] Win32 & NLS

From: "Magnus Hagander" <mha(at)sollentuna(dot)net>
To: "Peter Eisentraut" <peter_e(at)gmx(dot)net>, <pgsql-hackers-win32(at)postgresql(dot)org>, "pgsql-patches" <pgsql-patches(at)postgresql(dot)org>
Subject: Re: [PATCHES] Win32 & NLS
Date: 2004-10-17 16:16:22
Message-ID: 6BCB9D8A16AC4241919521715F4D8BCE456A23@algol.sollentuna.se
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers-win32 pgsql-patches

>> Which appears to suggest that we should change the locale using
>> putenv() etc, and not using setlocale() at all... Because setlocale()
>> does not support LC_MESSAGES, probably.
>
>This cannot possibly work. putenv() doesn't change any locale. The
>environment variables only serve as a default when you call
>setlocale()
>without an actual locale value. But to enable any locale, you always
>need to call setlocale() somehow, somewhere.

That was my first thought, too. But it *does* appear to work.

With this patch, I can change lc_messages from
environment-before-startup, from postgresql.conf or using "set
lc_messages='foo'".
The only main thing I see as being wrong is that it cannot check if the
specified messages were incorrect. If I literally set it to "foo", I get
english without getting any error/warning.

Clearly they don't just serve as defaults on win32. That's the only
conclusion I can draw from the fact that this works, and from the
questions in the FAQ referenced.

See also for example
http://lists.gnu.org/archive/html/bug-gnu-utils/2004-02/msg00091.html

//Magnus

Browse pgsql-hackers-win32 by date

  From Date Subject
Next Message Magnus Hagander 2004-10-17 16:37:16 Re: postgres win32 in FAT32
Previous Message Peter Eisentraut 2004-10-17 15:47:19 Re: [PATCHES] Win32 & NLS

Browse pgsql-patches by date

  From Date Subject
Next Message Tom Lane 2004-10-17 17:19:16 Re: Nearing final release?
Previous Message Peter Eisentraut 2004-10-17 15:47:19 Re: [PATCHES] Win32 & NLS