diff --git a/src/backend/utils/mb/mbutils.c b/src/backend/utils/mb/mbutils.c index 39d59cdb14..b0b65a0837 100644 --- a/src/backend/utils/mb/mbutils.c +++ b/src/backend/utils/mb/mbutils.c @@ -3,7 +3,7 @@ * client encoding and server internal encoding. * (currently mule internal code (mic) is used) * Tatsuo Ishii - * $Id: mbutils.c,v 1.20 2001/09/06 04:57:29 ishii Exp $ + * $Id: mbutils.c,v 1.21 2001/09/08 14:30:15 momjian Exp $ */ #include "postgres.h" @@ -137,10 +137,9 @@ pg_get_client_encoding() Assert(DatabaseEncoding); if (ClientEncoding == NULL) - { /* this is the first time */ ClientEncoding = DatabaseEncoding; - } + return (ClientEncoding->encoding); } @@ -153,10 +152,9 @@ pg_get_client_encoding_name() Assert(DatabaseEncoding); if (ClientEncoding == NULL) - { /* this is the first time */ ClientEncoding = DatabaseEncoding; - } + return (ClientEncoding->name); } @@ -311,9 +309,12 @@ pg_convert2(PG_FUNCTION_ARGS) unsigned char * pg_client_to_server(unsigned char *s, int len) { - Assert(ClientEncoding); Assert(DatabaseEncoding); + if (ClientEncoding == NULL) + /* this is the first time */ + ClientEncoding = DatabaseEncoding; + if (ClientEncoding->encoding == DatabaseEncoding->encoding) return s; @@ -336,9 +337,12 @@ pg_client_to_server(unsigned char *s, int len) unsigned char * pg_server_to_client(unsigned char *s, int len) { - Assert(ClientEncoding); Assert(DatabaseEncoding); + if (ClientEncoding == NULL) + /* this is the first time */ + ClientEncoding = DatabaseEncoding; + if (ClientEncoding->encoding == DatabaseEncoding->encoding) return s;