Fix issue where max idle time > total idle time

If the batterystats were reset while the device was
idling (via command line most likely), then also reset the
last time the device started idling so that the max idle time
calculation is correct.

Bug:28452600
Change-Id: I8a3d5dc3081deda76356c03d891e098baa85f88a
This commit is contained in:
Adam Lesinski
2016-05-26 16:05:35 -07:00
parent 28bdf2907a
commit 8ce3694181

View File

@@ -8153,14 +8153,17 @@ public class BatteryStatsImpl extends BatteryStats {
}
private void resetAllStatsLocked() {
final long uptimeMillis = mClocks.uptimeMillis();
final long elapsedRealtimeMillis = mClocks.elapsedRealtime();
mStartCount = 0;
initTimes(mClocks.uptimeMillis() * 1000, mClocks.elapsedRealtime() * 1000);
initTimes(uptimeMillis * 1000, elapsedRealtimeMillis * 1000);
mScreenOnTimer.reset(false);
for (int i=0; i<NUM_SCREEN_BRIGHTNESS_BINS; i++) {
mScreenBrightnessTimer[i].reset(false);
}
mInteractiveTimer.reset(false);
mPowerSaveModeEnabledTimer.reset(false);
mLastIdleTimeStart = elapsedRealtimeMillis;
mLongestLightIdleTime = 0;
mLongestFullIdleTime = 0;
mDeviceIdleModeLightTimer.reset(false);