diff options
author | Dianne Hackborn <hackbod@google.com> | 2010-04-23 14:25:05 -0700 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2010-04-23 14:25:05 -0700 |
commit | 994e39908b167fb70883ce6c1146433e0486e86f (patch) | |
tree | 6d6205d8ad08277680dbb6eda7376dde1326aca6 /services/java/com/android/server/am/ActivityManagerService.java | |
parent | 27e5a95afc10faca6314f9b710f07e8f99b3311f (diff) | |
parent | 2adec762fbb61c73f612acb7463ba765de1296ad (diff) | |
download | frameworks_base-994e39908b167fb70883ce6c1146433e0486e86f.zip frameworks_base-994e39908b167fb70883ce6c1146433e0486e86f.tar.gz frameworks_base-994e39908b167fb70883ce6c1146433e0486e86f.tar.bz2 |
am 2adec762: Merge "Fix issue #2621809: Kill! Kill! Kill!" into froyo
Merge commit '2adec762fbb61c73f612acb7463ba765de1296ad' into froyo-plus-aosp
* commit '2adec762fbb61c73f612acb7463ba765de1296ad':
Fix issue #2621809: Kill! Kill! Kill!
Diffstat (limited to 'services/java/com/android/server/am/ActivityManagerService.java')
-rw-r--r-- | services/java/com/android/server/am/ActivityManagerService.java | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/services/java/com/android/server/am/ActivityManagerService.java b/services/java/com/android/server/am/ActivityManagerService.java index 436bd17..8383ca3 100644 --- a/services/java/com/android/server/am/ActivityManagerService.java +++ b/services/java/com/android/server/am/ActivityManagerService.java @@ -14271,14 +14271,17 @@ public final class ActivityManagerService extends ActivityManagerNative implemen } } if (app.curAdj >= HIDDEN_APP_MIN_ADJ) { - numHidden++; - if (numHidden > MAX_HIDDEN_APPS) { - Slog.i(TAG, "Kill " + app.processName - + " (pid " + app.pid + "): hidden #" + numHidden - + " beyond limit " + MAX_HIDDEN_APPS); - EventLog.writeEvent(EventLogTags.AM_KILL, app.pid, - app.processName, app.setAdj, "too many background"); - Process.killProcess(app.pid); + if (!app.killedBackground) { + numHidden++; + if (numHidden > MAX_HIDDEN_APPS) { + Slog.i(TAG, "Kill " + app.processName + + " (pid " + app.pid + "): hidden #" + numHidden + + " beyond limit " + MAX_HIDDEN_APPS); + EventLog.writeEvent(EventLogTags.AM_KILL, app.pid, + app.processName, app.setAdj, "too many background"); + app.killedBackground = true; + Process.killProcess(app.pid); + } } } } else { |