Revert "DO NOT MERGE Fix race condition between binder deaths"
This reverts commit 8828d86e79.
Change-Id: I211f7b78a286868d8441323ff3c9cf4d7482fb61
This commit is contained in:
@@ -245,15 +245,6 @@ class AppWindowToken extends WindowToken {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
void removeAllWindows() {
|
|
||||||
for (int winNdx = allAppWindows.size() - 1; winNdx >= 0; --winNdx) {
|
|
||||||
WindowState win = allAppWindows.get(winNdx);
|
|
||||||
if (WindowManagerService.DEBUG_WINDOW_MOVEMENT) Slog.w(WindowManagerService.TAG,
|
|
||||||
"removeAllWindows: removing win=" + win);
|
|
||||||
win.mService.removeWindowLocked(win.mSession, win);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
void dump(PrintWriter pw, String prefix) {
|
void dump(PrintWriter pw, String prefix) {
|
||||||
super.dump(pw, prefix);
|
super.dump(pw, prefix);
|
||||||
|
|||||||
@@ -155,7 +155,7 @@ public class TaskStack {
|
|||||||
final ArrayList<WindowState> windows = activities.get(activityNdx).allAppWindows;
|
final ArrayList<WindowState> windows = activities.get(activityNdx).allAppWindows;
|
||||||
for (int winNdx = windows.size() - 1; winNdx >= 0; --winNdx) {
|
for (int winNdx = windows.size() - 1; winNdx >= 0; --winNdx) {
|
||||||
final WindowStateAnimator winAnimator = windows.get(winNdx).mWinAnimator;
|
final WindowStateAnimator winAnimator = windows.get(winNdx).mWinAnimator;
|
||||||
if (winAnimator.isAnimating() || winAnimator.mWin.mExiting) {
|
if (winAnimator.isAnimating() && !winAnimator.isDummyAnimation()) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3540,7 +3540,7 @@ public class WindowManagerService extends IWindowManager.Stub
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
final Task oldTask = mTaskIdToTask.get(atoken.groupId);
|
final Task oldTask = mTaskIdToTask.get(atoken.groupId);
|
||||||
oldTask.removeAppToken(atoken);
|
removeAppFromTaskLocked(atoken);
|
||||||
|
|
||||||
atoken.groupId = groupId;
|
atoken.groupId = groupId;
|
||||||
Task newTask = mTaskIdToTask.get(groupId);
|
Task newTask = mTaskIdToTask.get(groupId);
|
||||||
@@ -4562,8 +4562,6 @@ public class WindowManagerService extends IWindowManager.Stub
|
|||||||
}
|
}
|
||||||
|
|
||||||
void removeAppFromTaskLocked(AppWindowToken wtoken) {
|
void removeAppFromTaskLocked(AppWindowToken wtoken) {
|
||||||
wtoken.removeAllWindows();
|
|
||||||
|
|
||||||
final Task task = mTaskIdToTask.get(wtoken.groupId);
|
final Task task = mTaskIdToTask.get(wtoken.groupId);
|
||||||
if (task != null) {
|
if (task != null) {
|
||||||
if (!task.removeAppToken(wtoken)) {
|
if (!task.removeAppToken(wtoken)) {
|
||||||
|
|||||||
Reference in New Issue
Block a user