Fix ancient oversight in psql's \d pattern processing code: when seeing two

quote chars inside quote marks, should emit one quote *and stay in inquotes
mode*.  No doubt the lack of reports of this have something to do with the
poor documentation of the feature ...
This commit is contained in:
Tom Lane 2006-10-07 22:21:57 +00:00
parent 9cd5c4fca2
commit d85820cfb2

View File

@ -3,7 +3,7 @@
* *
* Copyright (c) 2000-2003, PostgreSQL Global Development Group * Copyright (c) 2000-2003, PostgreSQL Global Development Group
* *
* $Header: /cvsroot/pgsql/src/bin/psql/describe.c,v 1.87.2.1 2004/01/11 19:25:44 dennis Exp $ * $Header: /cvsroot/pgsql/src/bin/psql/describe.c,v 1.87.2.2 2006/10/07 22:21:57 tgl Exp $
*/ */
#include "postgres_fe.h" #include "postgres_fe.h"
#include "describe.h" #include "describe.h"
@ -1673,7 +1673,8 @@ processNamePattern(PQExpBuffer buf, const char *pattern,
appendPQExpBufferChar(&namebuf, '"'); appendPQExpBufferChar(&namebuf, '"');
cp++; cp++;
} }
inquotes = !inquotes; else
inquotes = !inquotes;
cp++; cp++;
} }
else if (!inquotes && isupper((unsigned char) *cp)) else if (!inquotes && isupper((unsigned char) *cp))