aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2002-12-01 17:33:33 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2002-12-01 17:33:33 +0000
commitcc7883a1a298f640c983449a515c8a57af578315 (patch)
tree243b869763daf1988f6d2ac154575f61ea361895 /src
parentf278d8134e31c3ede8a31ee28ca4b7c43a3562fa (diff)
downloadpostgresql-cc7883a1a298f640c983449a515c8a57af578315.tar.gz
postgresql-cc7883a1a298f640c983449a515c8a57af578315.zip
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.
Diffstat (limited to 'src')
-rw-r--r--src/backend/commands/copy.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/backend/commands/copy.c b/src/backend/commands/copy.c
index b101ac5bd84..906dd277eaf 100644
--- a/src/backend/commands/copy.c
+++ b/src/backend/commands/copy.c
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/commands/copy.c,v 1.177 2002/10/19 00:25:36 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/backend/commands/copy.c,v 1.177.2.1 2002/12/01 17:33:33 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -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)