Fix psql's \copy to not insert spaces around dots and commas in the text of

the SELECT query in \copy (SELECT ...) commands.  This is unnecessary and
breaks numeric literals, as seen in bug #5411 from Vitalii Tymchyshyn.

This change has already been made in passing in HEAD; backpatch to 8.2
through 8.4 (earlier releases don't have COPY (SELECT ...) at all).
This commit is contained in:
Tom Lane 2010-04-15 21:05:17 +00:00
parent 02915f614d
commit fc4fac0598

View File

@ -3,7 +3,7 @@
*
* Copyright (c) 2000-2008, PostgreSQL Global Development Group
*
* $PostgreSQL: pgsql/src/bin/psql/copy.c,v 1.77.2.1 2009/08/07 20:16:22 tgl Exp $
* $PostgreSQL: pgsql/src/bin/psql/copy.c,v 1.77.2.2 2010/04/15 21:05:17 tgl Exp $
*/
#include "postgres_fe.h"
#include "copy.h"
@ -150,7 +150,7 @@ parse_slash_copy(const char *args)
while (parens > 0)
{
token = strtokx(NULL, whitespace, ".,()", "\"'",
token = strtokx(NULL, whitespace, "()", "\"'",
nonstd_backslash, true, false, pset.encoding);
if (!token)
goto error;