diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2001-01-06 01:39:01 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2001-01-06 01:39:01 +0000 |
commit | 0ad5e43772faf79f086614e3d0e430dbde0ad9fc (patch) | |
tree | 29d0b92968d737f4599bd8ad62c9f6d60da9d852 | |
parent | 81d08fcffeed731e6b48bb7474d56c660f0e8294 (diff) | |
download | postgresql-0ad5e43772faf79f086614e3d0e430dbde0ad9fc.tar.gz postgresql-0ad5e43772faf79f086614e3d0e430dbde0ad9fc.zip |
Fix misplaced strdup(), which could lead to error messages referencing
deallocated memory later on.
-rw-r--r-- | src/pl/plpgsql/src/gram.y | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/pl/plpgsql/src/gram.y b/src/pl/plpgsql/src/gram.y index 8251d71908e..ed1704276e9 100644 --- a/src/pl/plpgsql/src/gram.y +++ b/src/pl/plpgsql/src/gram.y @@ -4,7 +4,7 @@ * procedural language * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/pl/plpgsql/src/gram.y,v 1.12 2000/09/05 09:02:18 wieck Exp $ + * $Header: /cvsroot/pgsql/src/pl/plpgsql/src/gram.y,v 1.13 2001/01/06 01:39:01 tgl Exp $ * * This software is copyrighted by Jan Wieck - Hamburg. * @@ -378,13 +378,15 @@ decl_rowtype : T_ROW decl_varname : T_WORD { - $$.name = plpgsql_tolower(strdup(yytext)); - $$.lineno = yylineno; + /* name should be malloc'd for use as varname */ + $$.name = strdup(plpgsql_tolower(yytext)); + $$.lineno = yylineno; } ; decl_renname : T_WORD { + /* the result must be palloc'd, see plpgsql_ns_rename */ $$ = plpgsql_tolower(yytext); } ; |