Guard against NULL strings in SET key=val constructs.

Problem noted by Fernando Nasser.
This commit is contained in:
Thomas G. Lockhart 2002-03-09 17:37:16 +00:00
parent ee2154829e
commit f20509551d

View File

@ -11,7 +11,7 @@
* *
* *
* IDENTIFICATION * IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/parser/gram.y,v 2.288 2002/03/08 04:37:17 tgl Exp $ * $Header: /cvsroot/pgsql/src/backend/parser/gram.y,v 2.289 2002/03/09 17:37:16 thomas Exp $
* *
* HISTORY * HISTORY
* AUTHOR DATE MAJOR EVENT * AUTHOR DATE MAJOR EVENT
@ -790,6 +790,7 @@ VariableSetStmt: SET ColId TO var_value
{ {
VariableSetStmt *n = makeNode(VariableSetStmt); VariableSetStmt *n = makeNode(VariableSetStmt);
n->name = $2; n->name = $2;
if ($4 != NULL)
n->args = makeList1(makeStringConst($4, NULL)); n->args = makeList1(makeStringConst($4, NULL));
$$ = (Node *) n; $$ = (Node *) n;
} }
@ -797,6 +798,7 @@ VariableSetStmt: SET ColId TO var_value
{ {
VariableSetStmt *n = makeNode(VariableSetStmt); VariableSetStmt *n = makeNode(VariableSetStmt);
n->name = $2; n->name = $2;
if ($4 != NULL)
n->args = makeList1(makeStringConst($4, NULL)); n->args = makeList1(makeStringConst($4, NULL));
$$ = (Node *) n; $$ = (Node *) n;
} }
@ -826,6 +828,7 @@ VariableSetStmt: SET ColId TO var_value
{ {
VariableSetStmt *n = makeNode(VariableSetStmt); VariableSetStmt *n = makeNode(VariableSetStmt);
n->name = "client_encoding"; n->name = "client_encoding";
if ($3 != NULL)
n->args = makeList1(makeStringConst($3, NULL)); n->args = makeList1(makeStringConst($3, NULL));
$$ = (Node *) n; $$ = (Node *) n;
} }