From 8bb3ad462f8d53b67d2c4707e9dde6604a276bd9 Mon Sep 17 00:00:00 2001 From: Robert Haas Date: Tue, 26 Jul 2022 15:10:25 -0400 Subject: [PATCH] Fix brain fade in e530be2c5ce77475d56ccf8f4e0c4872b666ad5f. The BoolGetDatum() call ended up in the wrong place. It should be applied when we, err, want to convert a bool to a datum. Thanks to Tom Lane for noticing this. Discussion: http://postgr.es/m/2511599.1658861964@sss.pgh.pa.us --- src/backend/commands/user.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/backend/commands/user.c b/src/backend/commands/user.c index 37260edbe48..94135fdd6b6 100644 --- a/src/backend/commands/user.c +++ b/src/backend/commands/user.c @@ -693,14 +693,14 @@ AlterRole(ParseState *pstate, AlterRoleStmt *stmt) */ if (dissuper) { - bool should_be_super = BoolGetDatum(boolVal(dissuper->arg)); + bool should_be_super = boolVal(dissuper->arg); if (!should_be_super && roleid == BOOTSTRAP_SUPERUSERID) ereport(ERROR, (errcode(ERRCODE_INSUFFICIENT_PRIVILEGE), errmsg("permission denied: bootstrap user must be superuser"))); - new_record[Anum_pg_authid_rolsuper - 1] = should_be_super; + new_record[Anum_pg_authid_rolsuper - 1] = BoolGetDatum(should_be_super); new_record_repl[Anum_pg_authid_rolsuper - 1] = true; }