Re: [HACKERS] Re: pgsql: setlocale() on Windows doesn't work correctly if the locale name - Mailing list pgsql-committers

From Hiroshi Inoue
Subject Re: [HACKERS] Re: pgsql: setlocale() on Windows doesn't work correctly if the locale name
Date
Msg-id 4DAE577E.3080501@tpf.co.jp
Whole thread Raw
In response to Re: [HACKERS] Re: pgsql: setlocale() on Windows doesn't work correctly if the locale name  (Andrew Dunstan <andrew@dunslane.net>)
List pgsql-committers
(2011/04/20 12:25), Andrew Dunstan wrote:
>
> On 04/19/2011 09:42 PM, Hiroshi Inoue wrote:
>>
>> bootstrap_template1() in initdb runs the BKI script in bootstrap
>> mode to create template1. Some symbols (LC_COLLATE, LC_CTYPE in
>> pg_database etc) in the BKI script are substituted by actual values
>> using replace_token(). Isn't it correct?
>> ISTM replace_token() takes care of nothing about single quotes
>> in its input values but the comment in scanstr() says
>>                          /*
>>                           * Note: if scanner is working right, unescaped
>> quotes can only
>>                           * appear in pairs, so there should be another
>> character.
>>                           */
>>
>
> That's perfectly true, but only one of the replaced locale names
> contains a single quote mark. So clearly there's more going on here than
> just the bug you're referring to. Heikki's commit message specifically
> refers to dots in locale names, which shouldn't cause a problem of that
> type, I believe.

Yes it's completely another issue as for dots.
I can find no concrete reference to problems about locale
 names containing dots. Is the following an example?

In my environment (Windows Vista using VC8)

  setlocale(LC_XXXX, "Chinese (Traditional)_MCO.950");
works and
  setlocale(LC_XXXX, NULL);
returns
  Chinese (Traditional)_Macao S.A.R..950
but
  setlocale(LC_XXXX, "Chinese (Traditional)_Macao S.A.R..950");
fails.

regards,
Hiroshi Inoue

pgsql-committers by date:

Previous
From: Andrew Dunstan
Date:
Subject: Re: [HACKERS] Re: pgsql: setlocale() on Windows doesn't work correctly if the locale name
Next
From: Heikki Linnakangas
Date:
Subject: pgsql: Quotes in strings injected into bki file need to escaped. In par