diff options
| author | Chris Li <lihongyu@google.com> | 2021-06-29 20:05:26 -0700 |
|---|---|---|
| committer | Chris Li <lihongyu@google.com> | 2021-07-07 12:50:53 -0700 |
| commit | ae54032e9aca773139bf9e0533e48e5a63cd689a (patch) | |
| tree | a3530aac09c76a460e0db3ae9ee328b9ad560c95 /core/java/android/window/TaskOrganizer.java | |
| parent | 3c33ffbc4628f67857fd79c9655bb006c4d04589 (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.java | 14 |
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 |
