Harmonize MinGW CODESET lookup with MSVC.
authorThomas Munro <[email protected]>
Wed, 14 Aug 2024 03:02:12 +0000 (15:02 +1200)
committerThomas Munro <[email protected]>
Wed, 14 Aug 2024 03:04:14 +0000 (15:04 +1200)
commitbf3401fe813ad3b6b34e5e9daf8fbd03540a2294
tree504451bc84628bd0aaad8a40e0194eb039bb584f
parent4c1b4cdb86a7a3a97349bb636f34a259abe0187d
Harmonize MinGW CODESET lookup with MSVC.

Historically, MinGW environments lacked some Windows API calls, so we
took a different code path in win32_langinfo().  Somehow, the code
change in commit 35eeea62 (removing setlocale() calls) caused one
particular 001_initdb.pl test to fail on MinGW + ICU builds, because
pg_import_system_collations() found no collations.  It might take a
MinGW user to discover the exact reason.

Updating that function to use the same code as MSVC seems to fix that
test, so lets do that.  (There are plenty more places that test for MSVC
unnecessarily, to be investigated later.)

While here, also rename the helper function win32_langinfo() to
win32_get_codeset(), to explain what it does less confusingly; it's not
really a general langinfo() substitute.

Noticed by triggering the optional MinGW CI task; no build farm animals
failed.

Discussion: https://postgr.es/m/CA%2BhUKGKBWfhXQ3J%2B2Lj5PhKvQnGD%3DsywA0XQcb7boTCf%3DerVLg%40mail.gmail.com
src/port/chklocale.c