aboutsummaryrefslogtreecommitdiff
path: root/src/backend/executor
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/executor')
-rw-r--r--src/backend/executor/execExprInterp.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/backend/executor/execExprInterp.c b/src/backend/executor/execExprInterp.c
index 1470edc0aba..827c65cc852 100644
--- a/src/backend/executor/execExprInterp.c
+++ b/src/backend/executor/execExprInterp.c
@@ -4250,9 +4250,9 @@ ExecEvalPreOrderedDistinctSingle(AggState *aggstate, AggStatePerTrans pertrans)
if (!pertrans->haslast ||
pertrans->lastisnull != isnull ||
- !DatumGetBool(FunctionCall2Coll(&pertrans->equalfnOne,
- pertrans->aggCollation,
- pertrans->lastdatum, value)))
+ (!isnull && !DatumGetBool(FunctionCall2Coll(&pertrans->equalfnOne,
+ pertrans->aggCollation,
+ pertrans->lastdatum, value))))
{
if (pertrans->haslast && !pertrans->inputtypeByVal)
pfree(DatumGetPointer(pertrans->lastdatum));