From: Tom Lane Date: Thu, 1 Jun 2000 22:21:05 +0000 (+0000) Subject: Lexer defended us against overlength plain identifiers, but not against X-Git-Tag: REL7_1_BETA~1213 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=0672a3c0811464b16a132b09765ba6f4e82c5157;p=thirdparty%2Fpostgresql.git Lexer defended us against overlength plain identifiers, but not against overlength quoted identifiers. Death and destruction ensue... --- diff --git a/src/backend/parser/scan.l b/src/backend/parser/scan.l index 6d904198209..0d3b07f0bb7 100644 --- a/src/backend/parser/scan.l +++ b/src/backend/parser/scan.l @@ -9,7 +9,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/parser/scan.l,v 1.70 2000/05/29 05:44:54 tgl Exp $ + * $Header: /cvsroot/pgsql/src/backend/parser/scan.l,v 1.71 2000/06/01 22:21:05 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -326,6 +326,12 @@ other . } {xdstop} { BEGIN(INITIAL); + if (strlen(literalbuf) >= NAMEDATALEN) + { + elog(NOTICE, "identifier \"%s\" will be truncated to \"%.*s\"", + literalbuf, NAMEDATALEN-1, literalbuf); + literalbuf[NAMEDATALEN-1] = '\0'; + } yylval.str = pstrdup(literalbuf); return IDENT; }