summaryrefslogtreecommitdiffstats
path: root/services
diff options
context:
space:
mode:
authorCraig Mautner <cmautner@google.com>2015-02-24 19:36:07 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2015-02-24 19:36:08 +0000
commit5d8a69f2774d5843704f18f6ff608edc55051e9d (patch)
treeb40e2da666c46207927590af0efa37d18fe8ddb5 /services
parent9fc3cef1c7d85f764f00be40b62388a4cc0f3e82 (diff)
parentacebdc84d182f39add0432b35d974da58f608749 (diff)
downloadframeworks_base-5d8a69f2774d5843704f18f6ff608edc55051e9d.zip
frameworks_base-5d8a69f2774d5843704f18f6ff608edc55051e9d.tar.gz
frameworks_base-5d8a69f2774d5843704f18f6ff608edc55051e9d.tar.bz2
Merge "Cleanup the activity before the task and stack"
Diffstat (limited to 'services')
-rw-r--r--services/core/java/com/android/server/am/ActivityStack.java10
1 files changed, 6 insertions, 4 deletions
diff --git a/services/core/java/com/android/server/am/ActivityStack.java b/services/core/java/com/android/server/am/ActivityStack.java
index b51f862..c3343f5 100644
--- a/services/core/java/com/android/server/am/ActivityStack.java
+++ b/services/core/java/com/android/server/am/ActivityStack.java
@@ -3054,6 +3054,8 @@ final class ActivityStack {
* representation) and cleaning things up as a result of its hosting
* processing going away, in which case there is no remaining client-side
* state to destroy so only the cleanup here is needed.
+ *
+ * Note: Call before #removeActivityFromHistoryLocked.
*/
final void cleanUpActivityLocked(ActivityRecord r, boolean cleanServices,
boolean setState) {
@@ -3465,7 +3467,7 @@ final class ActivityStack {
if (DEBUG_CLEANUP) Slog.v(
TAG, "Record #" + i + " " + r + ": app=" + r.app);
if (r.app == app) {
- boolean remove;
+ final boolean remove;
if ((!r.haveState && !r.stateNotNeeded) || r.finishing) {
// Don't currently have state for the activity, or
// it is finishing -- always remove it.
@@ -3499,8 +3501,6 @@ final class ActivityStack {
mService.updateUsageStats(r, false);
}
}
- removeActivityFromHistoryLocked(r, "appDied");
-
} else {
// We have the current state for this activity, so
// it can be restarted later when needed.
@@ -3519,8 +3519,10 @@ final class ActivityStack {
r.icicle = null;
}
}
-
cleanUpActivityLocked(r, true, true);
+ if (remove) {
+ removeActivityFromHistoryLocked(r, "appDied");
+ }
}
}
}