[wm] fix npe when removing trusted task overlays
Bug: 284898339 Test: add and remove game service overlay Change-Id: I4f76e1e59f5284ad393397deec12f2d6bef5b7bb
This commit is contained in:
@@ -8261,6 +8261,13 @@ public class WindowManagerService extends IWindowManager.Stub
|
||||
@Override
|
||||
public void addTrustedTaskOverlay(int taskId,
|
||||
SurfaceControlViewHost.SurfacePackage overlay) {
|
||||
if (overlay == null) {
|
||||
throw new IllegalArgumentException("Invalid overlay passed in for task=" + taskId);
|
||||
} else if (overlay.getSurfaceControl() == null
|
||||
|| !overlay.getSurfaceControl().isValid()) {
|
||||
throw new IllegalArgumentException(
|
||||
"Invalid overlay surfacecontrol passed in for task=" + taskId);
|
||||
}
|
||||
synchronized (mGlobalLock) {
|
||||
final Task task = mRoot.getRootTask(taskId);
|
||||
if (task == null) {
|
||||
@@ -8273,6 +8280,13 @@ public class WindowManagerService extends IWindowManager.Stub
|
||||
@Override
|
||||
public void removeTrustedTaskOverlay(int taskId,
|
||||
SurfaceControlViewHost.SurfacePackage overlay) {
|
||||
if (overlay == null) {
|
||||
throw new IllegalArgumentException("Invalid overlay passed in for task=" + taskId);
|
||||
} else if (overlay.getSurfaceControl() == null
|
||||
|| !overlay.getSurfaceControl().isValid()) {
|
||||
throw new IllegalArgumentException(
|
||||
"Invalid overlay surfacecontrol passed in for task=" + taskId);
|
||||
}
|
||||
synchronized (mGlobalLock) {
|
||||
final Task task = mRoot.getRootTask(taskId);
|
||||
if (task == null) {
|
||||
|
||||
Reference in New Issue
Block a user