aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2001-01-06 01:39:01 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2001-01-06 01:39:01 +0000
commit0ad5e43772faf79f086614e3d0e430dbde0ad9fc (patch)
tree29d0b92968d737f4599bd8ad62c9f6d60da9d852
parent81d08fcffeed731e6b48bb7474d56c660f0e8294 (diff)
downloadpostgresql-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.y8
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);
}
;