From 311506afbba83c11b862c1f95a24dea83fab0aad Mon Sep 17 00:00:00 2001 From: Adam Powell Date: Fri, 31 Oct 2014 13:55:58 -0700 Subject: [PATCH] Don't update OverScroller fling state if no time has passed since start If no time has passed when we try to update fling state, skip the update computation since there is nothing to do. Fixes a bug where we could return NaN from OverScroller#getCurrentVelocity. Bug 17700698 Change-Id: I65042d4d26a29593f66781b58456c2d1e85381c6 --- core/java/android/widget/OverScroller.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/core/java/android/widget/OverScroller.java b/core/java/android/widget/OverScroller.java index 7b3dd31fd1595..a40d4f83a17b7 100644 --- a/core/java/android/widget/OverScroller.java +++ b/core/java/android/widget/OverScroller.java @@ -904,6 +904,10 @@ public class OverScroller { final long time = AnimationUtils.currentAnimationTimeMillis(); final long currentTime = time - mStartTime; + if (currentTime == 0) { + // Skip work but report that we're still going if we have a nonzero duration. + return mDuration > 0; + } if (currentTime > mDuration) { return false; }