Re: [HACKERS] Re: pgsql: setlocale() on Windows doesn't work correctly if the locale name
Hiroshi Inoue <inoue@tpf.co.jp>
From: Hiroshi Inoue <inoue@tpf.co.jp>
To: Andrew Dunstan <andrew@dunslane.net>, Heikki Linnakangas <heikki.linnakangas@iki.fi>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, pgsql-hackers@postgresql.org, pgsql-committers@postgresql.org
Date: 2011-04-20T03:48:14Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
setlocale() on Windows doesn't work correctly if the locale name contains
- d5a7bf8c11c8 9.1.0 cited
(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