]> git.ipfire.org Git - thirdparty/postgresql.git/commitdiff
Add missing initializations of p_perminfo
authorAmit Langote <amitlan@postgresql.org>
Fri, 14 Jul 2023 05:28:38 +0000 (14:28 +0900)
committerAmit Langote <amitlan@postgresql.org>
Fri, 14 Jul 2023 05:56:35 +0000 (14:56 +0900)
In a61b1f74823, we failed to update transformFromClauseItem() and
buildNSItemFromLists() to set ParseNamespaceItem.p_perminfo causing
it to point to garbage.

Pointed out by Tom Lane.

Reported-by: Farias de Oliveira <matheusfarias519@gmail.com>
Discussion: https://postgr.es/m/3173476.1689286373%40sss.pgh.pa.us
Backpatch-through: 16

src/backend/parser/parse_clause.c
src/backend/parser/parse_relation.c

index f61f7947552692a23955b74e74a9b59121a3d31c..334b9b42bd5572e87194d2b25f31fb630372bd8c 100644 (file)
@@ -1573,6 +1573,7 @@ transformFromClauseItem(ParseState *pstate, Node *n,
                        jnsitem->p_names = j->join_using_alias;
                        jnsitem->p_rte = nsitem->p_rte;
                        jnsitem->p_rtindex = nsitem->p_rtindex;
+                       jnsitem->p_perminfo = NULL;
                        /* no need to copy the first N columns, just use res_nscolumns */
                        jnsitem->p_nscolumns = res_nscolumns;
                        /* set default visibility flags; might get changed later */
index 41d60494b9771d5e399bba9d408d68be96881de1..864ea9b0d5d6ab599a67eca3743037617aa1286e 100644 (file)
@@ -1392,6 +1392,7 @@ buildNSItemFromLists(RangeTblEntry *rte, Index rtindex,
        nsitem->p_names = rte->eref;
        nsitem->p_rte = rte;
        nsitem->p_rtindex = rtindex;
+       nsitem->p_perminfo = NULL;
        nsitem->p_nscolumns = nscolumns;
        /* set default visibility flags; might get changed later */
        nsitem->p_rel_visible = true;