Patch to make Turks happy.

From: Nicolai Tufar <ntufar(at)apb(dot)com(dot)tr>
To: pgsql-hackers(at)postgreSQL(dot)org
Cc: pgsql-patches(at)postgreSQL(dot)org
Subject: Patch to make Turks happy.
Date: 2002-12-02 16:58:38
Message-ID: Pine.GSO.4.10.10212021846420.1239-100000@prana
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers pgsql-patches

Hi,

Yet another problem with Turkish encoding. clean_encoding_name()
in src/backend/utils/mb/encnames.c uses tolower() to convert locale
names to lower-case. This causes errors if locale name contains
capital "I" and current olcale is Turkish. Some examples:

aaa=# \l
List of databases
Name | Owner | Encoding
-----------+-------+----------
aaa | pgsql | LATIN5
bbb | pgsql | LATIN5
template0 | pgsql | LATIN5
template1 | pgsql | LATIN5
(4 rows)
aaa=# CREATE DATABASE ccc ENCODING='LATIN5';
ERROR: LATIN5 is not a valid encoding name
aaa=# \encoding
SQL_ASCII
aaa=# \encoding SQL_ASCII
SQL_ASCII: invalid encoding name or conversion procedure not found
aaa=# \encoding LATIN5
LATIN5: invalid encoding name or conversion procedure not found

Patch, is a simple change to use ASCII-only lower-case conversion
instead of locale-dependent tolower()

Best regards,
Nic.

*** ./src/backend/utils/mb/encnames.c.orig Mon Dec 2 15:58:49 2002
--- ./src/backend/utils/mb/encnames.c Mon Dec 2 18:13:23 2002
***************
*** 407,413 ****
for (p = key, np = newkey; *p != '\0'; p++)
{
if (isalnum((unsigned char) *p))
! *np++ = tolower((unsigned char) *p);
}
*np = '\0';
return newkey;
--- 407,416 ----
for (p = key, np = newkey; *p != '\0'; p++)
{
if (isalnum((unsigned char) *p))
! if (*p >= 'A' && *p <= 'Z')
! *np++ = *p + 'a' - 'A';
! else
! *np++ = *p;
}
*np = '\0';
return newkey;

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Joe Conway 2002-12-02 17:28:22 Re: ALTER TABLE schema SCHEMA TO new_schema?
Previous Message Joe Conway 2002-12-02 16:56:41 Re: [GENERAL] One SQL to access two databases.

Browse pgsql-patches by date

  From Date Subject
Next Message Bruce Momjian 2002-12-02 18:23:57 Re: documentation improvements
Previous Message Neil Conway 2002-12-02 08:34:23 documentation improvements