diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2024-08-11 12:24:56 -0400 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2024-08-11 12:24:56 -0400 |
commit | aed881386aa6a6a542e46d14d3505e4e6f9310a0 (patch) | |
tree | 3d07830d932090ede259041026fc8d70aca14904 | |
parent | 2b8d33f66c134b5f1b0a94a7e40af2fbb6a086b7 (diff) | |
download | postgresql-aed881386aa6a6a542e46d14d3505e4e6f9310a0.tar.gz postgresql-aed881386aa6a6a542e46d14d3505e4e6f9310a0.zip |
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.
-rw-r--r-- | src/backend/utils/adt/ruleutils.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/backend/utils/adt/ruleutils.c b/src/backend/utils/adt/ruleutils.c index c656afc35a1..4039ee0df73 100644 --- a/src/backend/utils/adt/ruleutils.c +++ b/src/backend/utils/adt/ruleutils.c @@ -7914,11 +7914,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) @@ -8045,12 +8045,12 @@ 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) || - IsA(dpns->plan, WorkTableScan)); + Assert(dpns->plan && (IsA(dpns->plan, CteScan) || + IsA(dpns->plan, WorkTableScan))); tle = get_tle_by_resno(dpns->inner_tlist, attnum); if (!tle) |