diff options
Diffstat (limited to 'src/backend/utils/mb/conv.c')
| -rw-r--r-- | src/backend/utils/mb/conv.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/backend/utils/mb/conv.c b/src/backend/utils/mb/conv.c index 8789dcbc3e..f4a6083f20 100644 --- a/src/backend/utils/mb/conv.c +++ b/src/backend/utils/mb/conv.c @@ -6,7 +6,7 @@ * Portions Copyright (c) 1994, Regents of the University of California * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/utils/mb/conv.c,v 1.52 2005/03/07 04:30:52 momjian Exp $ + * $PostgreSQL: pgsql/src/backend/utils/mb/conv.c,v 1.53 2005/06/15 00:15:08 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -361,12 +361,19 @@ UtfToLocal(unsigned char *utf, unsigned char *iso, iutf = *utf++ << 8; iutf |= *utf++; } - else + else if (l == 3) { iutf = *utf++ << 16; iutf |= *utf++ << 8; iutf |= *utf++; } + else if (l == 4) + { + iutf = *utf++ << 24; + iutf |= *utf++ << 16; + iutf |= *utf++ << 8; + iutf |= *utf++; + } p = bsearch(&iutf, map, size, sizeof(pg_utf_to_local), compare1); if (p == NULL) |
