summaryrefslogtreecommitdiff
path: root/rs/java/android/renderscript/ProgramFragmentFixedFunction.java
diff options
context:
space:
mode:
authorwilsonshih <wilsonshih@google.com>2020-02-24 11:51:43 +0800
committerwilsonshih <wilsonshih@google.com>2020-02-24 15:36:30 +0800
commitd1551333823f4e86ec0e19b65c4faafeb617f87b (patch)
treef0cfbf48b6a99a57fd10e4328abcb762402e54ab /rs/java/android/renderscript/ProgramFragmentFixedFunction.java
parenta67e14a6e194c54bf74e8f28b4c44fa853b69776 (diff)
Fix race condition while WallpaperMS rebinding service.
Connection object could not receive onServiceConnected after new process of the service was active. How issue happen: 1. The process of wallpaper service died, AM schedule to restart, WallpaperMS schedule to rebind. 2. WallpaperMS bind service with new connection object. => ActiveService bring up new process. Add this ServiceRecord to mPendingServices. 3. WallpaperMS unbind previous connection object. => ActiveService remove previous connection, also remove this ServiceRecord object from mPendingServices list. 4. Process ready, attach application but cannot find the service from pendingServices. Solution: Do not remove the ServiceRecord object from mPendingServices if there is any connection left. Also use runnable object instead of method reference. Bug: 147964645 Bug: 149625847 Test: atest WallpaperManagerTest WallpaperManagerServiceTests Change-Id: I3adec66de8ac0c7efc9ad3ffbf604b01eacb5720
Diffstat (limited to 'rs/java/android/renderscript/ProgramFragmentFixedFunction.java')
0 files changed, 0 insertions, 0 deletions