From f20509551dd1ddccd84beb2bc582fa26ed431432 Mon Sep 17 00:00:00 2001
From: "Thomas G. Lockhart" <lockhart@fourpalms.org>
Date: Sat, 9 Mar 2002 17:37:16 +0000
Subject: [PATCH] Guard against NULL strings in SET key=val constructs. 
 Problem noted by Fernando Nasser.

---
 src/backend/parser/gram.y | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/src/backend/parser/gram.y b/src/backend/parser/gram.y
index c166a744592..f9a876f1495 100644
--- a/src/backend/parser/gram.y
+++ b/src/backend/parser/gram.y
@@ -11,7 +11,7 @@
  *
  *
  * 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
  *	  AUTHOR			DATE			MAJOR EVENT
@@ -790,14 +790,16 @@ VariableSetStmt:  SET ColId TO var_value
 				{
 					VariableSetStmt *n = makeNode(VariableSetStmt);
 					n->name  = $2;
-					n->args = makeList1(makeStringConst($4, NULL));
+					if ($4 != NULL)
+						n->args = makeList1(makeStringConst($4, NULL));
 					$$ = (Node *) n;
 				}
 		| SET ColId '=' var_value
 				{
 					VariableSetStmt *n = makeNode(VariableSetStmt);
 					n->name  = $2;
-					n->args = makeList1(makeStringConst($4, NULL));
+					if ($4 != NULL)
+						n->args = makeList1(makeStringConst($4, NULL));
 					$$ = (Node *) n;
 				}
 		| SET TIME ZONE zone_value
@@ -826,7 +828,8 @@ VariableSetStmt:  SET ColId TO var_value
 				{
 					VariableSetStmt *n = makeNode(VariableSetStmt);
 					n->name  = "client_encoding";
-					n->args = makeList1(makeStringConst($3, NULL));
+					if ($3 != NULL)
+						n->args = makeList1(makeStringConst($3, NULL));
 					$$ = (Node *) n;
 				}
 		| SET SESSION AUTHORIZATION ColId_or_Sconst
-- 
GitLab