diff options
| author | Dianne Hackborn <hackbod@google.com> | 2014-02-19 18:57:50 +0000 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2014-02-19 18:57:50 +0000 |
| commit | b3f38c6398d7f493ee50656a8728acee2c0671f6 (patch) | |
| tree | eb9b78c9c5f5e8dee1eab514430f85e5f50bb3ce /core/java | |
| parent | 66d792b6631a8dfd0dd0b7abc75077760fa083cc (diff) | |
| parent | 00e2521d2a75c51585795e5c74b5857c543eb120 (diff) | |
Merge "Fix issue #13095629: Device is in restart mode for long time..."
Diffstat (limited to 'core/java')
| -rw-r--r-- | core/java/com/android/internal/os/BatteryStatsImpl.java | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/core/java/com/android/internal/os/BatteryStatsImpl.java b/core/java/com/android/internal/os/BatteryStatsImpl.java index 155f062be9c6..274e26756506 100644 --- a/core/java/com/android/internal/os/BatteryStatsImpl.java +++ b/core/java/com/android/internal/os/BatteryStatsImpl.java @@ -23,6 +23,7 @@ import android.bluetooth.BluetoothHeadset; import android.content.Context; import android.net.ConnectivityManager; import android.net.NetworkStats; +import android.os.BadParcelableException; import android.os.BatteryManager; import android.os.BatteryStats; import android.os.FileUtils; @@ -86,7 +87,7 @@ public final class BatteryStatsImpl extends BatteryStats { private static final int MAGIC = 0xBA757475; // 'BATSTATS' // Current on-disk Parcel version - private static final int VERSION = 84 + (USE_OLD_HISTORY ? 1000 : 0); + private static final int VERSION = 85 + (USE_OLD_HISTORY ? 1000 : 0); // Maximum number of items we will record in the history. private static final int MAX_HISTORY_ITEMS = 2000; @@ -6026,7 +6027,7 @@ public final class BatteryStatsImpl extends BatteryStats { stream.close(); readSummaryFromParcel(in); - } catch(java.io.IOException e) { + } catch(Exception e) { Slog.e("BatteryStats", "Error reading battery statistics", e); } @@ -6234,6 +6235,9 @@ public final class BatteryStatsImpl extends BatteryStats { } sNumSpeedSteps = in.readInt(); + if (sNumSpeedSteps < 0 || sNumSpeedSteps > 100) { + throw new BadParcelableException("Bad speed steps in data: " + sNumSpeedSteps); + } final int NU = in.readInt(); if (NU > 10000) { |
