summaryrefslogtreecommitdiff
path: root/core/java/android/inputmethodservice/InputMethodService.java
diff options
context:
space:
mode:
authorRiddle Hsu <riddlehsu@google.com>2022-07-07 00:38:37 +0000
committerRiddle Hsu <riddlehsu@google.com>2022-07-07 00:52:59 +0000
commit14bfb89c8a719c34b61ffe1614522d7b4263faa5 (patch)
treec51acd87d4f77f302edac93615af2c9bb7a996ce /core/java/android/inputmethodservice/InputMethodService.java
parentd69caeeeda0a99baf010969585cdbf112d8648d7 (diff)
Fix race of releasing leashes with shell recents transition
The code flow: RecentsAnimationController#finishController mOnFinishedListener.accept(this); RecentsAnimationCallbacks#onAnimationFinished *Post to "main" thread RecentsAnimationListener#onRecentsAnimationFinished TaskAnimationManager#cleanUpRecentsAnimation Invoke SurfaceControl#release *Post to "UiThreadHelper" thread RemoteTransitionCompat.RecentsControllerWrap#finish Invoke SurfaceControl.Transaction#remove on the same SurfaceControl. Then it may be either NullPointerException from SurfaceControl#checkNotReleased. Or rarely native crash by changing the surface control from 2 threads at the same time. Bug: 238192072 Bug: 238047903 Bug: 237631001 Bug: 237497909 Bug: 235616350 Test: Loop launch app and swipe to home. Change-Id: I7e4ce2c273b8396ed464eb48426fd4435d6c5338
Diffstat (limited to 'core/java/android/inputmethodservice/InputMethodService.java')
0 files changed, 0 insertions, 0 deletions