aboutsummaryrefslogtreecommitdiff
path: root/src/backend/commands/user.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/commands/user.c')
-rw-r--r--src/backend/commands/user.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/backend/commands/user.c b/src/backend/commands/user.c
index a9b1e5d05f2..3bba3f61887 100644
--- a/src/backend/commands/user.c
+++ b/src/backend/commands/user.c
@@ -6,7 +6,7 @@
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Header: /cvsroot/pgsql/src/backend/commands/user.c,v 1.113 2002/10/21 19:46:45 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/backend/commands/user.c,v 1.114 2002/12/02 05:20:47 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -915,8 +915,10 @@ AlterUserSet(AlterUserSetStmt *stmt)
repl_repl[Anum_pg_shadow_useconfig - 1] = 'r';
if (strcmp(stmt->variable, "all") == 0 && valuestr == NULL)
+ {
/* RESET ALL */
repl_null[Anum_pg_shadow_useconfig - 1] = 'n';
+ }
else
{
Datum datum;
@@ -935,7 +937,10 @@ AlterUserSet(AlterUserSetStmt *stmt)
else
array = GUCArrayDelete(array, stmt->variable);
- repl_val[Anum_pg_shadow_useconfig - 1] = PointerGetDatum(array);
+ if (array)
+ repl_val[Anum_pg_shadow_useconfig - 1] = PointerGetDatum(array);
+ else
+ repl_null[Anum_pg_shadow_useconfig - 1] = 'n';
}
newtuple = heap_modifytuple(oldtuple, rel, repl_val, repl_null, repl_repl);