diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2017-10-27 18:16:24 -0400 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2017-10-27 18:16:24 -0400 |
commit | d76886c2d33123299ce7c8255a71e39b9e53711b (patch) | |
tree | 46223a782dd114d16cdb342911167484f49416f9 /src | |
parent | d5b760ecb5e172252810fae877e6d6193b818167 (diff) | |
download | postgresql-d76886c2d33123299ce7c8255a71e39b9e53711b.tar.gz postgresql-d76886c2d33123299ce7c8255a71e39b9e53711b.zip |
Dept of second thoughts: keep aliasp_item in sync with tlistitem.
Commit d5b760ecb wasn't quite right, on second thought: if the
caller didn't ask for column names then it would happily emit
more Vars than if the caller did ask for column names. This
is surely not a good idea. Advance the aliasp_item whether or
not we're preparing a colnames list.
Diffstat (limited to 'src')
-rw-r--r-- | src/backend/parser/parse_relation.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/backend/parser/parse_relation.c b/src/backend/parser/parse_relation.c index e89bebfcc32..6acc21dfe6a 100644 --- a/src/backend/parser/parse_relation.c +++ b/src/backend/parser/parse_relation.c @@ -2221,7 +2221,6 @@ expandRTE(RangeTblEntry *rte, int rtindex, int sublevels_up, char *label = strVal(lfirst(aliasp_item)); *colnames = lappend(*colnames, makeString(pstrdup(label))); - aliasp_item = lnext(aliasp_item); } if (colvars) @@ -2237,6 +2236,8 @@ expandRTE(RangeTblEntry *rte, int rtindex, int sublevels_up, *colvars = lappend(*colvars, varnode); } + + aliasp_item = lnext(aliasp_item); } } break; |