From 7c59d61b32685f11579280c3a830e51f00b04ea6 Mon Sep 17 00:00:00 2001 From: vemacs Date: Tue, 1 Mar 2016 09:24:06 -0700 Subject: [PATCH] Limit max time delta in years to 100k --- .../src/com/earth2me/essentials/utils/DateUtil.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/Essentials/src/com/earth2me/essentials/utils/DateUtil.java b/Essentials/src/com/earth2me/essentials/utils/DateUtil.java index c12bcd91c..37ffe2f03 100644 --- a/Essentials/src/com/earth2me/essentials/utils/DateUtil.java +++ b/Essentials/src/com/earth2me/essentials/utils/DateUtil.java @@ -94,6 +94,16 @@ public class DateUtil { } static int dateDiff(int type, Calendar fromDate, Calendar toDate, boolean future) { + int year = Calendar.YEAR; + int maxYears = 100000; + + int fromYear = fromDate.get(year); + int toYear = toDate.get(year); + if (Math.abs(fromYear - toYear) > maxYears) { + toDate.set(year, fromYear + + (future ? maxYears : -maxYears)); + } + int diff = 0; long savedDate = fromDate.getTimeInMillis(); while ((future && !fromDate.after(toDate)) || (!future && !fromDate.before(toDate))) {