summaryrefslogtreecommitdiff
path: root/core/java
diff options
context:
space:
mode:
authorAdam Lesinski <adamlesinski@google.com>2015-07-01 12:09:45 -0700
committerAdam Lesinski <adamlesinski@google.com>2015-07-01 12:09:45 -0700
commit43ae441ad7d0df12f3982fc60406582445d2df4e (patch)
tree2c67179fe0f3417565d765219332921190621512 /core/java
parentd3ecb3e6f04a0f76c886238af6bef1d10b987a42 (diff)
BatteryStats: Don't assume every kernel reports a power field in /proc/uid_cputime
Bug:22225706 Change-Id: I4c7d889716345231564c1e96494dc84aab17cf01
Diffstat (limited to 'core/java')
-rw-r--r--core/java/com/android/internal/os/KernelUidCpuTimeReader.java7
1 files changed, 6 insertions, 1 deletions
diff --git a/core/java/com/android/internal/os/KernelUidCpuTimeReader.java b/core/java/com/android/internal/os/KernelUidCpuTimeReader.java
index e2d366a8ea3a..45cc8b2260ef 100644
--- a/core/java/com/android/internal/os/KernelUidCpuTimeReader.java
+++ b/core/java/com/android/internal/os/KernelUidCpuTimeReader.java
@@ -77,7 +77,12 @@ public class KernelUidCpuTimeReader {
final int uid = Integer.parseInt(uidStr.substring(0, uidStr.length() - 1), 10);
final long userTimeUs = Long.parseLong(splitter.next(), 10);
final long systemTimeUs = Long.parseLong(splitter.next(), 10);
- final long powerMaUs = Long.parseLong(splitter.next(), 10) / 1000;
+ final long powerMaUs;
+ if (splitter.hasNext()) {
+ powerMaUs = Long.parseLong(splitter.next(), 10) / 1000;
+ } else {
+ powerMaUs = 0;
+ }
if (callback != null) {
long userTimeDeltaUs = userTimeUs;