diff options
author | Vadim Caen <caen@google.com> | 2021-05-31 17:20:45 +0200 |
---|---|---|
committer | Vadim Caen <caen@google.com> | 2021-06-15 15:39:09 +0200 |
commit | a46ff113be1c3f2105c4ebb7dbe2e1390ea6c70c (patch) | |
tree | 3ac79085e75f33e2b3a3aceae43d79413d999723 /data | |
parent | 5829bd558ac39c73f2059b6e1ee542de6d6a115f (diff) |
Release the SurfacePackageViewHost on splash screen removed
The SurfacePackageViewHost was never release, leading to a leak of its
surfaces.
This CL ensure it is released:
- Directly in the shell if the SplashScreenView was not copied
- From the client, through the window manger and then to the shell if
the splash screen was copied in the client process
Test: Manually tested with app setting by checking if the surfaces
are actually removed (winscope + logs) in the following scenarios:
- When the application registers an OnExitAnimationListener
and calls remove(),
- When the application registers an OnExitAnimationListener
and dies without calling remove()
- When the applicaiton does not register an OnExitAnimationListener
and the shell removes the splash screen
Bug: 189759180
Change-Id: Ib68bfffad6720911368739d7dd87d8a03034c589
Diffstat (limited to 'data')
-rw-r--r-- | data/etc/services.core.protolog.json | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/data/etc/services.core.protolog.json b/data/etc/services.core.protolog.json index 3c9086dde021..ac5e2d0fcacb 100644 --- a/data/etc/services.core.protolog.json +++ b/data/etc/services.core.protolog.json @@ -961,6 +961,12 @@ "group": "WM_DEBUG_APP_TRANSITIONS", "at": "com\/android\/server\/wm\/AppTransitionController.java" }, + "-1003678883": { + "message": "Cleaning splash screen token=%s", + "level": "VERBOSE", + "group": "WM_DEBUG_STARTING_WINDOW", + "at": "com\/android\/server\/wm\/ActivityRecord.java" + }, "-1003060523": { "message": "Finish needs to pause: %s", "level": "VERBOSE", |