From 7284dfe42cb40f89a92eee61b260075d0a707938 Mon Sep 17 00:00:00 2001 From: Andrew Dunstan Date: Sun, 30 Dec 2007 14:46:52 +0000 Subject: [PATCH] Add sanity check to ensure delimiter and quote are different in CSV mode --- src/backend/commands/copy.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/backend/commands/copy.c b/src/backend/commands/copy.c index 52e7e69527..33d360c31d 100644 --- a/src/backend/commands/copy.c +++ b/src/backend/commands/copy.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/commands/copy.c,v 1.293 2007/12/27 18:28:58 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/commands/copy.c,v 1.294 2007/12/30 14:46:52 adunstan Exp $ * *------------------------------------------------------------------------- */ @@ -906,6 +906,11 @@ DoCopy(const CopyStmt *stmt, const char *queryString) (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), errmsg("COPY quote must be a single ASCII character"))); + if (cstate->csv_mode && cstate->delim[0] == cstate->quote[0]) + ereport(ERROR, + (errcode(ERRCODE_INVALID_PARAMETER_VALUE), + errmsg("COPY delimiter and quote must be different"))); + /* Check escape */ if (!cstate->csv_mode && cstate->escape != NULL) ereport(ERROR,