postgres.git / summary / log / commit / refs

commit    016f443648d2c92a3391d12545f06cf86cc06f5f
Author:   Tom Lane <tgl@sss.pgh.pa.us>
Date:     Sun Aug 11 16:24:56 2024 +0000
First released in: 18.0, 13.17, 14.14, 15.9, 16.5, 17.0

    Suppress Coverity warnings about Asserts in get_name_for_var_field.
    
    Coverity thinks dpns->plan could be null at these points.  That
    shouldn't really be possible, but it's easy enough to modify the
    Asserts so they'd not core-dump if it were true.
    
    These are new in b919a97a6.  Back-patch to v13; the v12 version
    of the patch didn't have these Asserts.


src/backend/utils/adt/ruleutils.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/backend/utils/adt/ruleutils.c b/src/backend/utils/adt/ruleutils.c index 97716991b86..0191858bd68 100644 --- a/src/backend/utils/adt/ruleutils.c +++ b/src/backend/utils/adt/ruleutils.c @@ -7298,11 +7298,11 @@ get_name_for_var_field(Var *var, int fieldno, { char *dummy_name = palloc(32); - Assert(IsA(dpns->plan, Result)); + Assert(dpns->plan && IsA(dpns->plan, Result)); snprintf(dummy_name, 32, "f%d", fieldno); return dummy_name; } - Assert(IsA(dpns->plan, SubqueryScan)); + Assert(dpns->plan && IsA(dpns->plan, SubqueryScan)); tle = get_tle_by_resno(dpns->inner_tlist, attnum); if (!tle) @@ -7426,11 +7426,11 @@ get_name_for_var_field(Var *var, int fieldno, { char *dummy_name = palloc(32); - Assert(IsA(dpns->plan, Result)); + Assert(dpns->plan && IsA(dpns->plan, Result)); snprintf(dummy_name, 32, "f%d", fieldno); return dummy_name; } - Assert(IsA(dpns->plan, CteScan)); + Assert(dpns->plan && IsA(dpns->plan, CteScan)); tle = get_tle_by_resno(dpns->inner_tlist, attnum); if (!tle) [parent: adf9808fa966]