diff options
author | Marc G. Fournier <scrappy@hub.org> | 1998-04-27 17:10:50 +0000 |
---|---|---|
committer | Marc G. Fournier <scrappy@hub.org> | 1998-04-27 17:10:50 +0000 |
commit | f554af0a9fdbe0e9636fce36d6c809e81ce1539c (patch) | |
tree | 3cd60fe19a94c78e774ac3b70ef3d729f7896f20 /src/backend/utils/adt/oracle_compat.c | |
parent | 2cbcf461028dee105f69328e4589f08a4f59db91 (diff) | |
download | postgresql-f554af0a9fdbe0e9636fce36d6c809e81ce1539c.tar.gz postgresql-f554af0a9fdbe0e9636fce36d6c809e81ce1539c.zip |
From: t-ishii@sra.co.jp
Hi, here are patches I promised (against 6.3.2):
* character_length(), position(), substring() are now aware of
multi-byte characters
* add octet_length()
* add --with-mb option to configure
* new regression tests for EUC_KR
(contributed by "Soonmyung. Hong" <hong@lunaris.hanmesoft.co.kr>)
* add some test cases to the EUC_JP regression test
* fix problem in regress/regress.sh in case of System V
* fix toupper(), tolower() to handle 8bit chars
note that:
o patches for both configure.in and configure are
included. maybe the one for configure is not necessary.
o pg_proc.h was modified to add octet_length(). I used OIDs
(1374-1379) for that. Please let me know if these numbers are not
appropriate.
Diffstat (limited to 'src/backend/utils/adt/oracle_compat.c')
-rw-r--r-- | src/backend/utils/adt/oracle_compat.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/backend/utils/adt/oracle_compat.c b/src/backend/utils/adt/oracle_compat.c index 3680b1e2194..3324108250a 100644 --- a/src/backend/utils/adt/oracle_compat.c +++ b/src/backend/utils/adt/oracle_compat.c @@ -1,7 +1,7 @@ /* * Edmund Mergl <E.Mergl@bawue.de> * - * $Id: oracle_compat.c,v 1.12 1998/02/26 04:37:19 momjian Exp $ + * $Id: oracle_compat.c,v 1.13 1998/04/27 17:08:19 scrappy Exp $ * */ @@ -55,7 +55,7 @@ lower(text *string) while (m--) { - *ptr_ret++ = tolower(*ptr++); + *ptr_ret++ = tolower((unsigned char)*ptr++); } return ret; @@ -95,7 +95,7 @@ upper(text *string) while (m--) { - *ptr_ret++ = toupper(*ptr++); + *ptr_ret++ = toupper((unsigned char)*ptr++); } return ret; @@ -135,18 +135,18 @@ initcap(text *string) ptr = VARDATA(string); ptr_ret = VARDATA(ret); - *ptr_ret++ = toupper(*ptr++); + *ptr_ret++ = toupper((unsigned char)*ptr++); --m; while (m--) { if (*(ptr_ret - 1) == ' ' || *(ptr_ret - 1) == ' ') { - *ptr_ret++ = toupper(*ptr++); + *ptr_ret++ = toupper((unsigned char)*ptr++); } else { - *ptr_ret++ = tolower(*ptr++); + *ptr_ret++ = tolower((unsigned char)*ptr++); } } |