Loading core/java/com/android/internal/os/BatteryUsageStatsProvider.java +13 −2 Original line number Diff line number Diff line Loading @@ -21,11 +21,13 @@ import android.hardware.SensorManager; import android.os.BatteryStats; import android.os.BatteryUsageStats; import android.os.BatteryUsageStatsQuery; import android.os.Parcel; import android.os.SystemClock; import android.os.UidBatteryConsumer; import android.util.Log; import android.util.SparseArray; import com.android.internal.annotations.GuardedBy; import com.android.internal.annotations.VisibleForTesting; import java.util.ArrayList; Loading Loading @@ -133,9 +135,12 @@ public class BatteryUsageStatsProvider { */ @VisibleForTesting public BatteryUsageStats getBatteryUsageStats(BatteryUsageStatsQuery query) { synchronized (mStats) { return getBatteryUsageStats(query, currentTimeMillis()); } } @GuardedBy("mStats") private BatteryUsageStats getBatteryUsageStats(BatteryUsageStatsQuery query, long currentTimeMs) { if (query.getToTimestamp() == 0) { Loading @@ -145,6 +150,7 @@ public class BatteryUsageStatsProvider { } } @GuardedBy("mStats") private BatteryUsageStats getCurrentBatteryUsageStats(BatteryUsageStatsQuery query, long currentTimeMs) { final long realtimeUs = elapsedRealtime() * 1000; Loading Loading @@ -189,7 +195,12 @@ public class BatteryUsageStatsProvider { } BatteryStatsImpl batteryStatsImpl = (BatteryStatsImpl) mStats; batteryUsageStatsBuilder.setBatteryHistory(batteryStatsImpl.mHistoryBuffer); // Make a copy of battery history to avoid concurrent modification. Parcel historyBuffer = Parcel.obtain(); historyBuffer.appendFrom(batteryStatsImpl.mHistoryBuffer, 0, batteryStatsImpl.mHistoryBuffer.dataSize()); batteryUsageStatsBuilder.setBatteryHistory(historyBuffer); } return batteryUsageStatsBuilder.build(); Loading Loading
core/java/com/android/internal/os/BatteryUsageStatsProvider.java +13 −2 Original line number Diff line number Diff line Loading @@ -21,11 +21,13 @@ import android.hardware.SensorManager; import android.os.BatteryStats; import android.os.BatteryUsageStats; import android.os.BatteryUsageStatsQuery; import android.os.Parcel; import android.os.SystemClock; import android.os.UidBatteryConsumer; import android.util.Log; import android.util.SparseArray; import com.android.internal.annotations.GuardedBy; import com.android.internal.annotations.VisibleForTesting; import java.util.ArrayList; Loading Loading @@ -133,9 +135,12 @@ public class BatteryUsageStatsProvider { */ @VisibleForTesting public BatteryUsageStats getBatteryUsageStats(BatteryUsageStatsQuery query) { synchronized (mStats) { return getBatteryUsageStats(query, currentTimeMillis()); } } @GuardedBy("mStats") private BatteryUsageStats getBatteryUsageStats(BatteryUsageStatsQuery query, long currentTimeMs) { if (query.getToTimestamp() == 0) { Loading @@ -145,6 +150,7 @@ public class BatteryUsageStatsProvider { } } @GuardedBy("mStats") private BatteryUsageStats getCurrentBatteryUsageStats(BatteryUsageStatsQuery query, long currentTimeMs) { final long realtimeUs = elapsedRealtime() * 1000; Loading Loading @@ -189,7 +195,12 @@ public class BatteryUsageStatsProvider { } BatteryStatsImpl batteryStatsImpl = (BatteryStatsImpl) mStats; batteryUsageStatsBuilder.setBatteryHistory(batteryStatsImpl.mHistoryBuffer); // Make a copy of battery history to avoid concurrent modification. Parcel historyBuffer = Parcel.obtain(); historyBuffer.appendFrom(batteryStatsImpl.mHistoryBuffer, 0, batteryStatsImpl.mHistoryBuffer.dataSize()); batteryUsageStatsBuilder.setBatteryHistory(historyBuffer); } return batteryUsageStatsBuilder.build(); Loading