Loading services/core/java/com/android/server/wm/ActivityRecord.java +1 −1 Original line number Diff line number Diff line Loading @@ -3687,7 +3687,7 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A @Override void removeImmediately() { if (!finishing) { if (!isState(DESTROYING, DESTROYED)) { // If Task#removeImmediately is called directly with alive activities, ensure that the // activities are destroyed and detached from process. destroyImmediately("removeImmediately"); Loading services/tests/wmtests/src/com/android/server/wm/ActivityRecordTests.java +15 −0 Original line number Diff line number Diff line Loading @@ -1615,6 +1615,21 @@ public class ActivityRecordTests extends WindowTestsBase { assertFalse(wpc.hasActivities()); } @Test public void testRemoveImmediatelyWithFinishingActivity() throws RemoteException { final ActivityRecord activity = createActivityWithTask(); final WindowProcessController wpc = activity.app; activity.makeFinishingLocked(); assertTrue(activity.finishing); activity.getTask().removeImmediately("test"); verify(mAtm.getLifecycleManager()).scheduleTransaction(any(), eq(activity.appToken), isA(DestroyActivityItem.class)); assertFalse(wpc.hasActivities()); assertEquals(DESTROYING, activity.getState()); } @Test public void testRemoveFromHistory() { final ActivityRecord activity = createActivityWithTask(); Loading Loading
services/core/java/com/android/server/wm/ActivityRecord.java +1 −1 Original line number Diff line number Diff line Loading @@ -3687,7 +3687,7 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A @Override void removeImmediately() { if (!finishing) { if (!isState(DESTROYING, DESTROYED)) { // If Task#removeImmediately is called directly with alive activities, ensure that the // activities are destroyed and detached from process. destroyImmediately("removeImmediately"); Loading
services/tests/wmtests/src/com/android/server/wm/ActivityRecordTests.java +15 −0 Original line number Diff line number Diff line Loading @@ -1615,6 +1615,21 @@ public class ActivityRecordTests extends WindowTestsBase { assertFalse(wpc.hasActivities()); } @Test public void testRemoveImmediatelyWithFinishingActivity() throws RemoteException { final ActivityRecord activity = createActivityWithTask(); final WindowProcessController wpc = activity.app; activity.makeFinishingLocked(); assertTrue(activity.finishing); activity.getTask().removeImmediately("test"); verify(mAtm.getLifecycleManager()).scheduleTransaction(any(), eq(activity.appToken), isA(DestroyActivityItem.class)); assertFalse(wpc.hasActivities()); assertEquals(DESTROYING, activity.getState()); } @Test public void testRemoveFromHistory() { final ActivityRecord activity = createActivityWithTask(); Loading