aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoe Conway <mail@joeconway.com>2009-06-09 16:35:36 +0000
committerJoe Conway <mail@joeconway.com>2009-06-09 16:35:36 +0000
commite5de601267d98c5d60df6de8d436685c7105d149 (patch)
tree3c36e8dadc764a6ea6f5f371461fdf1f2616f44b
parentadaf60131f81394939b5b55f74130343d520cd2d (diff)
downloadpostgresql-e5de601267d98c5d60df6de8d436685c7105d149.tar.gz
postgresql-e5de601267d98c5d60df6de8d436685c7105d149.zip
Default client encoding to server encoding for dblink connections. Addresses
issue raised by Ruzsinszky Attila and confirmed by others. ----------------------------------------------------------------------
-rw-r--r--contrib/dblink/dblink.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/contrib/dblink/dblink.c b/contrib/dblink/dblink.c
index 283b4d0b25e..e709ae9cc3b 100644
--- a/contrib/dblink/dblink.c
+++ b/contrib/dblink/dblink.c
@@ -8,7 +8,7 @@
* Darko Prenosil <Darko.Prenosil@finteh.hr>
* Shridhar Daithankar <shridhar_daithankar@persistent.co.in>
*
- * $PostgreSQL: pgsql/contrib/dblink/dblink.c,v 1.79 2009/06/06 21:27:56 joe Exp $
+ * $PostgreSQL: pgsql/contrib/dblink/dblink.c,v 1.80 2009/06/09 16:35:36 joe Exp $
* Copyright (c) 2001-2009, PostgreSQL Global Development Group
* ALL RIGHTS RESERVED;
*
@@ -48,6 +48,7 @@
#include "executor/spi.h"
#include "foreign/foreign.h"
#include "lib/stringinfo.h"
+#include "mb/pg_wchar.h"
#include "miscadmin.h"
#include "nodes/execnodes.h"
#include "nodes/nodes.h"
@@ -185,6 +186,7 @@ typedef struct remoteConnHashEnt
errdetail("%s", msg))); \
} \
dblink_security_check(conn, rconn); \
+ PQsetClientEncoding(conn, GetDatabaseEncodingName()); \
freeconn = true; \
} \
} while (0)
@@ -263,6 +265,9 @@ dblink_connect(PG_FUNCTION_ARGS)
/* check password actually used if not superuser */
dblink_security_check(conn, rconn);
+ /* attempt to set client encoding to match server encoding */
+ PQsetClientEncoding(conn, GetDatabaseEncodingName());
+
if (connname)
{
rconn->conn = conn;