summaryrefslogtreecommitdiff
path: root/core/java/android/window/TaskOrganizer.java
diff options
context:
space:
mode:
authorChris Li <lihongyu@google.com>2021-06-29 20:05:26 -0700
committerChris Li <lihongyu@google.com>2021-07-07 12:50:53 -0700
commitae54032e9aca773139bf9e0533e48e5a63cd689a (patch)
treea3530aac09c76a460e0db3ae9ee328b9ad560c95 /core/java/android/window/TaskOrganizer.java
parent3c33ffbc4628f67857fd79c9655bb006c4d04589 (diff)
Remove TaskInfo#topActivityToken usage in size compat for security
Security report shows that this can cause leak token of different app. Replace the functionality with a callback to the TaskOrganizerController to restart activity when size compat restart button is clicked. Bug: 186776724 Test: manually verify the restart button still works Change-Id: I097b9f02e8435e6765695b9d5a531a4e165bac66
Diffstat (limited to 'core/java/android/window/TaskOrganizer.java')
-rw-r--r--core/java/android/window/TaskOrganizer.java14
1 files changed, 14 insertions, 0 deletions
diff --git a/core/java/android/window/TaskOrganizer.java b/core/java/android/window/TaskOrganizer.java
index 73995491668a..8fa011028f44 100644
--- a/core/java/android/window/TaskOrganizer.java
+++ b/core/java/android/window/TaskOrganizer.java
@@ -222,6 +222,20 @@ public class TaskOrganizer extends WindowOrganizer {
}
}
+
+ /**
+ * Restarts the top activity in the given task by killing its process if it is visible.
+ * @hide
+ */
+ @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_TASKS)
+ public void restartTaskTopActivityProcessIfVisible(@NonNull WindowContainerToken task) {
+ try {
+ mTaskOrganizerController.restartTaskTopActivityProcessIfVisible(task);
+ } catch (RemoteException e) {
+ throw e.rethrowFromSystemServer();
+ }
+ }
+
/**
* Gets the executor to run callbacks on.
* @hide