From dcda2c5fa15e63daad67f5720a2f726e34f8cd71 Mon Sep 17 00:00:00 2001 From: Normand Briere <nbriere@noware.ca> Date: Thu, 20 Dec 2018 20:11:57 -0500 Subject: [PATCH] Fix out of memory crash with TimeUnit. --- timeflow/vis/timeline/AxisTicMarks.java | 10 +++++++--- 1 files changed, 7 insertions(+), 3 deletions(-) diff --git a/timeflow/vis/timeline/AxisTicMarks.java b/timeflow/vis/timeline/AxisTicMarks.java index edbd96b..2a88ab8 100755 --- a/timeflow/vis/timeline/AxisTicMarks.java +++ b/timeflow/vis/timeline/AxisTicMarks.java @@ -10,7 +10,7 @@ public List<Long> tics; private static final TimeUnit[] units = { - TimeUnit.YEAR, TimeUnit.MONTH, TimeUnit.DAY, TimeUnit.HOUR, TimeUnit.MINUTE, TimeUnit.SECOND + TimeUnit.YEAR, TimeUnit.MONTH, TimeUnit.DAY, TimeUnit.HOUR, TimeUnit.MINUTE, TimeUnit.SECOND, TimeUnit.REALTIME }; private static final TimeUnit[] histUnits = { @@ -20,7 +20,8 @@ TimeUnit.WEEK, TimeUnit.DAY.times(2), TimeUnit.DAY, TimeUnit.HOUR, TimeUnit.MINUTE, - TimeUnit.SECOND + TimeUnit.SECOND, + TimeUnit.REALTIME }; public AxisTicMarks(TimeUnit unit, long start, long end) @@ -48,12 +49,15 @@ public static AxisTicMarks histoTics(long start, long end) { - for (int i = histUnits.length - 1; i >= 0; i--) + for (int i = histUnits.length; --i >= 0;) { TimeUnit u = histUnits[i]; long estimate = u.approxNumInRange(start, end); if (estimate < 200 || i == 0) { + if (i == 17) + i = 17; + AxisTicMarks t = new AxisTicMarks(u, start, end); return t; } -- Gitblit v1.6.2