diff options
Diffstat (limited to 'src/backend/optimizer/plan/subselect.c')
-rw-r--r-- | src/backend/optimizer/plan/subselect.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/backend/optimizer/plan/subselect.c b/src/backend/optimizer/plan/subselect.c index 72d023dccf5..040c6732ccc 100644 --- a/src/backend/optimizer/plan/subselect.c +++ b/src/backend/optimizer/plan/subselect.c @@ -404,8 +404,13 @@ SS_process_sublinks(Node *expr) ((Expr *) expr)->args = (List *) SS_process_sublinks((Node *) ((Expr *) expr)->args); else if (IsA(expr, SubLink))/* got it! */ - expr = _make_subplan((SubLink *) expr); + { + lfirst(((Expr *) lfirst(((SubLink *)expr)->oper))->args) = + lfirst(((SubLink *)expr)->lefthand); + expr = _make_subplan((SubLink *) expr); + } + return (expr); } |