aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff Davis <jdavis@postgresql.org>2019-07-18 17:26:56 -0700
committerJeff Davis <jdavis@postgresql.org>2019-07-18 17:26:56 -0700
commit5245552ddbc43b7705389cae9c5095e687a3c950 (patch)
treef5bc4329849f9f4455e228810d5cf15b46d06a97
parent613eabcd51c3adec50e28c1f151d574db5a05a9e (diff)
downloadpostgresql-5245552ddbc43b7705389cae9c5095e687a3c950.tar.gz
postgresql-5245552ddbc43b7705389cae9c5095e687a3c950.zip
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 5fb347eacd8..e5c7e5c7eea 100644
--- a/src/backend/utils/adt/rangetypes.c
+++ b/src/backend/utils/adt/rangetypes.c
@@ -1431,13 +1431,15 @@ daterange_canonical(PG_FUNCTION_ARGS)
if (empty)
PG_RETURN_RANGE_P(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;