diff options
| author | Adam Lesinski <adamlesinski@google.com> | 2016-02-22 18:47:02 +0000 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2016-02-22 18:47:03 +0000 |
| commit | 3e439db8c829023645a54eee4cd531928bccb03d (patch) | |
| tree | cf6c648fa9b9b96502dee78cfc6e15140828fda9 /core/java | |
| parent | 20c518816a0946dff67a3b99b929bc30c9b0ad6c (diff) | |
| parent | 9d89bd5cb891dbc9b45b72aa291cbb9fc39b023c (diff) | |
Merge "DO NOT MERGE ANYWHERE: Don't change screen on time on time changes" into mnc-dr-dev
Diffstat (limited to 'core/java')
| -rw-r--r-- | core/java/android/app/usage/UsageStats.java | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/core/java/android/app/usage/UsageStats.java b/core/java/android/app/usage/UsageStats.java index 0fce4e2cd184..a88aa312550d 100644 --- a/core/java/android/app/usage/UsageStats.java +++ b/core/java/android/app/usage/UsageStats.java @@ -165,14 +165,18 @@ public final class UsageStats implements Parcelable { mPackageName + "' with UsageStats for package '" + right.mPackageName + "'."); } - if (right.mEndTimeStamp > mEndTimeStamp) { + if (right.mBeginTimeStamp > mBeginTimeStamp) { + // The incoming UsageStat begins after this one, so use its last time used fields + // as the source of truth. + // We use the mBeginTimeStamp due to a bug where UsageStats files can overlap with + // regards to their mEndTimeStamp. mLastEvent = right.mLastEvent; - mEndTimeStamp = right.mEndTimeStamp; mLastTimeUsed = right.mLastTimeUsed; mBeginIdleTime = right.mBeginIdleTime; mLastTimeSystemUsed = right.mLastTimeSystemUsed; } mBeginTimeStamp = Math.min(mBeginTimeStamp, right.mBeginTimeStamp); + mEndTimeStamp = Math.max(mEndTimeStamp, right.mEndTimeStamp); mTotalTimeInForeground += right.mTotalTimeInForeground; mLaunchCount += right.mLaunchCount; } |
