From: Peter Eisentraut Date: Fri, 16 Jun 2017 14:08:54 +0000 (-0400) Subject: Fix ICU collation use on Windows X-Git-Tag: REL_10_BETA2~129 X-Git-Url: http://git.postgresql.org/gitweb/?a=commitdiff_plain;h=41839b7abc85f21dd7ce76ab9cd1d7533c53cf9c;p=postgresql.git Fix ICU collation use on Windows Windows uses a separate code path for libc locales. The code previously ended up there also if an ICU collation should be used, leading to a crash. Reported-by: Ashutosh Sharma --- diff --git a/src/backend/utils/adt/varlena.c b/src/backend/utils/adt/varlena.c index a0dd391f092..a21c6899596 100644 --- a/src/backend/utils/adt/varlena.c +++ b/src/backend/utils/adt/varlena.c @@ -1433,7 +1433,8 @@ varstr_cmp(char *arg1, int len1, char *arg2, int len2, Oid collid) #ifdef WIN32 /* Win32 does not have UTF-8, so we need to map to UTF-16 */ - if (GetDatabaseEncoding() == PG_UTF8) + if (GetDatabaseEncoding() == PG_UTF8 + && (!mylocale || mylocale->provider == COLLPROVIDER_LIBC)) { int a1len; int a2len;