Re: [HACKERS] Patch to make Turks happy.
От | Bruce Momjian |
---|---|
Тема | Re: [HACKERS] Patch to make Turks happy. |
Дата | |
Msg-id | 200212050618.gB56IkZ29683@candle.pha.pa.us обсуждение исходный текст |
Ответ на | Patch to make Turks happy. (Nicolai Tufar <ntufar@apb.com.tr>) |
Ответы |
Re: [HACKERS] Patch to make Turks happy.
|
Список | pgsql-patches |
I am not going to apply this patch because I think it will mess up the handling of other locales. --------------------------------------------------------------------------- Nicolai Tufar wrote: > 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; > > > ---------------------------(end of broadcast)--------------------------- > TIP 4: Don't 'kill -9' the postmaster > -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 359-1001 + If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania 19073
В списке pgsql-patches по дате отправления: