From e5de601267d98c5d60df6de8d436685c7105d149 Mon Sep 17 00:00:00 2001 From: Joe Conway Date: Tue, 9 Jun 2009 16:35:36 +0000 Subject: [PATCH] Default client encoding to server encoding for dblink connections. Addresses issue raised by Ruzsinszky Attila and confirmed by others. ---------------------------------------------------------------------- --- contrib/dblink/dblink.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/contrib/dblink/dblink.c b/contrib/dblink/dblink.c index 283b4d0b25..e709ae9cc3 100644 --- a/contrib/dblink/dblink.c +++ b/contrib/dblink/dblink.c @@ -8,7 +8,7 @@ * Darko Prenosil * Shridhar Daithankar * - * $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; -- 2.40.0