mirror of
https://github.com/postgres/postgres.git
synced 2025-09-02 04:21:28 +03:00
Fix bugs in plpgsql and ecpg caused by assuming that isspace() would only
return true for exactly the characters treated as whitespace by their flex scanners. Per report from Victor Snezhko and subsequent investigation. Also fix a passel of unsafe usages of <ctype.h> functions, that is, ye olde char-vs-unsigned-char issue. I won't miss <ctype.h> when we are finally able to stop using it.
This commit is contained in:
@@ -3,7 +3,7 @@
|
||||
*
|
||||
* Copyright (c) 2000-2006, PostgreSQL Global Development Group
|
||||
*
|
||||
* $PostgreSQL: pgsql/src/bin/psql/tab-complete.c,v 1.154 2006/07/14 14:52:27 momjian Exp $
|
||||
* $PostgreSQL: pgsql/src/bin/psql/tab-complete.c,v 1.155 2006/09/22 21:39:57 tgl Exp $
|
||||
*/
|
||||
|
||||
/*----------------------------------------------------------------------
|
||||
@@ -1090,8 +1090,8 @@ psql_completion(char *text, int start, int end)
|
||||
/* Complete "AS ON <sth with a 'T' :)>" with a "TO" */
|
||||
else if (pg_strcasecmp(prev3_wd, "AS") == 0 &&
|
||||
pg_strcasecmp(prev2_wd, "ON") == 0 &&
|
||||
(toupper((unsigned char) prev_wd[4]) == 'T' ||
|
||||
toupper((unsigned char) prev_wd[5]) == 'T'))
|
||||
(pg_toupper((unsigned char) prev_wd[4]) == 'T' ||
|
||||
pg_toupper((unsigned char) prev_wd[5]) == 'T'))
|
||||
COMPLETE_WITH_CONST("TO");
|
||||
/* Complete "AS ON <sth> TO" with a table name */
|
||||
else if (pg_strcasecmp(prev4_wd, "AS") == 0 &&
|
||||
|
Reference in New Issue
Block a user