diff options
Diffstat (limited to 'services/core/java')
-rwxr-xr-x | services/core/java/com/android/server/am/ActivityStack.java | 18 | ||||
-rw-r--r-- | services/core/java/com/android/server/wm/WindowManagerService.java | 4 |
2 files changed, 11 insertions, 11 deletions
diff --git a/services/core/java/com/android/server/am/ActivityStack.java b/services/core/java/com/android/server/am/ActivityStack.java index 4a07256..77bb1a9 100755 --- a/services/core/java/com/android/server/am/ActivityStack.java +++ b/services/core/java/com/android/server/am/ActivityStack.java @@ -2734,15 +2734,6 @@ final class ActivityStack { here.fillInStackTrace(); Slog.i(TAG, "Removing activity " + r + " from stack"); } - final TaskRecord task = r.task; - if (task != null && task.removeActivity(r)) { - if (DEBUG_STACK) Slog.i(TAG, - "removeActivityFromHistoryLocked: last activity removed from " + this); - if (mStackSupervisor.isFrontStack(this) && task == topTask() && task.mOnTopOfHome) { - mStackSupervisor.moveHomeToTop(); - } - removeTask(task); - } r.takeFromHistory(); removeTimeoutsForActivityLocked(r); if (DEBUG_STATES) Slog.v(TAG, "Moving to DESTROYED: " + r + " (removed from history)"); @@ -2753,6 +2744,15 @@ final class ActivityStack { if (VALIDATE_TOKENS) { validateAppTokensLocked(); } + final TaskRecord task = r.task; + if (task != null && task.removeActivity(r)) { + if (DEBUG_STACK) Slog.i(TAG, + "removeActivityFromHistoryLocked: last activity removed from " + this); + if (mStackSupervisor.isFrontStack(this) && task == topTask() && task.mOnTopOfHome) { + mStackSupervisor.moveHomeToTop(); + } + removeTask(task); + } cleanUpActivityServicesLocked(r); r.removeUriPermissionsLocked(); } diff --git a/services/core/java/com/android/server/wm/WindowManagerService.java b/services/core/java/com/android/server/wm/WindowManagerService.java index 7293d6f..8f07e27 100644 --- a/services/core/java/com/android/server/wm/WindowManagerService.java +++ b/services/core/java/com/android/server/wm/WindowManagerService.java @@ -4535,8 +4535,8 @@ public class WindowManagerService extends IWindowManager.Stub void removeAppFromTaskLocked(AppWindowToken wtoken) { final Task task = mTaskIdToTask.get(wtoken.groupId); - if (!wtoken.mDeferRemoval && task != null && task.removeAppToken(wtoken)) { - removeTaskLocked(task); + if (task != null) { + task.removeAppToken(wtoken); } } |