diff options
author | Amith Yamasani <yamasani@google.com> | 2010-04-02 17:24:49 -0700 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2010-04-02 17:24:49 -0700 |
commit | c2e060cbedaa2371fcc5c909c216c8ceafa4f649 (patch) | |
tree | 7bde3f11216d96c8e59005386b81037bf7d4c169 | |
parent | 6f8b89bb6641dfc34fa36dec52d25115b35b37ec (diff) | |
parent | 0913ce95c29371cb7b58e294a8d60262bc7f4329 (diff) | |
download | frameworks_base-c2e060cbedaa2371fcc5c909c216c8ceafa4f649.zip frameworks_base-c2e060cbedaa2371fcc5c909c216c8ceafa4f649.tar.gz frameworks_base-c2e060cbedaa2371fcc5c909c216c8ceafa4f649.tar.bz2 |
am 0913ce95: Merge "Potential fix for bug: 2564824 : Device runtime restart in BatteryService" into froyo
Merge commit '0913ce95c29371cb7b58e294a8d60262bc7f4329' into froyo-plus-aosp
* commit '0913ce95c29371cb7b58e294a8d60262bc7f4329':
Potential fix for bug: 2564824 : Device runtime restart in BatteryService
-rw-r--r-- | core/java/com/android/internal/os/BatteryStatsImpl.java | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/core/java/com/android/internal/os/BatteryStatsImpl.java b/core/java/com/android/internal/os/BatteryStatsImpl.java index 24275ec..833c01b 100644 --- a/core/java/com/android/internal/os/BatteryStatsImpl.java +++ b/core/java/com/android/internal/os/BatteryStatsImpl.java @@ -895,9 +895,15 @@ public final class BatteryStatsImpl extends BatteryStats { String[] nameStringArray = mProcWakelocksName; long[] wlData = mProcWakelocksData; + // Stomp out any bad characters since this is from a circular buffer + // A corruption is seen sometimes that results in the vm crashing + // This should prevent crashes and the line will probably fail to parse + for (int j = startIndex; j < endIndex; j++) { + if ((wlBuffer[j] & 0x80) != 0) wlBuffer[j] = (byte) '?'; + } boolean parsed = Process.parseProcLine(wlBuffer, startIndex, endIndex, PROC_WAKELOCKS_FORMAT, nameStringArray, wlData, null); - + name = nameStringArray[0]; count = (int) wlData[1]; // convert nanoseconds to microseconds with rounding. |