From: Tom Lane Date: Sun, 1 Dec 2002 17:33:33 +0000 (+0000) Subject: Repair coredump in COPY OUT when client encoding is different from X-Git-Url: http://git.postgresql.org/gitweb/static/gitweb.js?a=commitdiff_plain;h=e592434cf5dc1860dc34a88830d674f71db622e5;p=users%2Fbernd%2Fpostgres.git Repair coredump in COPY OUT when client encoding is different from server encoding, per report from Nicolai Tufar. This is a minimum-risk patch for 7.3.1 --- I intend to apply a more general repair in HEAD. --- diff --git a/src/backend/commands/copy.c b/src/backend/commands/copy.c index ba72dbf839..2c1b263583 100644 --- a/src/backend/commands/copy.c +++ b/src/backend/commands/copy.c @@ -1470,9 +1470,8 @@ CopyAttributeOut(FILE *fp, char *server_string, char *delim) char *string; char c; char delimc = delim[0]; - bool same_encoding; - char *string_start; + char *string_start = NULL; int mblen; int i; @@ -1481,12 +1480,12 @@ CopyAttributeOut(FILE *fp, char *server_string, char *delim) { string = (char *) pg_server_to_client((unsigned char *) server_string, strlen(server_string)); - string_start = string; + if (string != server_string) + string_start = string; } else { string = server_string; - string_start = NULL; } for (; (c = *string) != '\0'; string += mblen)