summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff Davis <jdavis@postgresql.org>2019-07-18 16:49:25 -0700
committerJeff Davis <jdavis@postgresql.org>2019-07-18 16:49:25 -0700
commitb0a7e0f07fadba9542a711a4cbafc244c19d493b (patch)
tree991bc1b9df72a6a8ff741185ba0aec766dc20b44
parent955089d4d74d0dbaaa6c1e3a4652e96b6d1c2f54 (diff)
Fix error in commit e6feef57.
I was careless passing a datum directly to DATE_NOT_FINITE without calling DatumGetDateADT() first. Backpatch-through: 9.4
-rw-r--r--src/backend/utils/adt/rangetypes.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/backend/utils/adt/rangetypes.c b/src/backend/utils/adt/rangetypes.c
index 4cfc6ddb86d..aff2c422b98 100644
--- a/src/backend/utils/adt/rangetypes.c
+++ b/src/backend/utils/adt/rangetypes.c
@@ -1366,13 +1366,15 @@ daterange_canonical(PG_FUNCTION_ARGS)
if (empty)
PG_RETURN_RANGE(r);
- if (!lower.infinite && !DATE_NOT_FINITE(lower.val) && !lower.inclusive)
+ if (!lower.infinite && !DATE_NOT_FINITE(DatumGetDateADT(lower.val)) &&
+ !lower.inclusive)
{
lower.val = DirectFunctionCall2(date_pli, lower.val, Int32GetDatum(1));
lower.inclusive = true;
}
- if (!upper.infinite && !DATE_NOT_FINITE(upper.val) && upper.inclusive)
+ if (!upper.infinite && !DATE_NOT_FINITE(DatumGetDateADT(upper.val)) &&
+ upper.inclusive)
{
upper.val = DirectFunctionCall2(date_pli, upper.val, Int32GetDatum(1));
upper.inclusive = false;