From: Alexander Korotkov Date: Sun, 23 Apr 2023 10:55:49 +0000 (+0300) Subject: Fix custom validators call in build_local_reloptions() X-Git-Url: http://git.postgresql.org/gitweb/?a=commitdiff_plain;h=cd115c3530bd59bb0305d62ccef1c9504207ff4c;p=postgresql-pgindent.git Fix custom validators call in build_local_reloptions() We need to call them only when validate == true. Backpatch to 13, where opclass options were introduced. Reported-by: Tom Lane Discussion: https://postgr.es/m/2656633.1681831542%40sss.pgh.pa.us Reviewed-by: Tom Lane, Pavel Borisov Backpatch-through: 13 --- diff --git a/src/backend/access/common/reloptions.c b/src/backend/access/common/reloptions.c index 14c23101ad..90cb3951fc 100644 --- a/src/backend/access/common/reloptions.c +++ b/src/backend/access/common/reloptions.c @@ -1969,8 +1969,9 @@ build_local_reloptions(local_relopts *relopts, Datum options, bool validate) fillRelOptions(opts, relopts->relopt_struct_size, vals, noptions, validate, elems, noptions); - foreach(lc, relopts->validators) - ((relopts_validator) lfirst(lc)) (opts, vals, noptions); + if (validate) + foreach(lc, relopts->validators) + ((relopts_validator) lfirst(lc)) (opts, vals, noptions); if (elems) pfree(elems);