aboutsummaryrefslogtreecommitdiff
path: root/src/backend/executor/execUtils.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/executor/execUtils.c')
-rw-r--r--src/backend/executor/execUtils.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/backend/executor/execUtils.c b/src/backend/executor/execUtils.c
index 71c6b5dc0a8..f9e7bb479f1 100644
--- a/src/backend/executor/execUtils.c
+++ b/src/backend/executor/execUtils.c
@@ -451,9 +451,7 @@ ExecAssignExprContext(EState *estate, PlanState *planstate)
TupleDesc
ExecGetResultType(PlanState *planstate)
{
- TupleTableSlot *slot = planstate->ps_ResultTupleSlot;
-
- return slot->tts_tupleDescriptor;
+ return planstate->ps_ResultTupleDesc;
}
@@ -496,7 +494,11 @@ ExecConditionalAssignProjectionInfo(PlanState *planstate, TupleDesc inputDesc,
inputDesc))
planstate->ps_ProjInfo = NULL;
else
+ {
+ if (!planstate->ps_ResultTupleSlot)
+ ExecInitResultSlot(planstate);
ExecAssignProjectionInfo(planstate, inputDesc);
+ }
}
static bool