summaryrefslogtreecommitdiff
path: root/rs/java/android/renderscript/ProgramStore.java
diff options
context:
space:
mode:
authorSeigo Nonaka <nona@google.com>2017-07-17 20:22:44 -0700
committerSeigo Nonaka <nona@google.com>2017-07-19 11:22:45 -0700
commit82871bdcfcc250e4aeeb731dfedeb0a23623244a (patch)
treef58ef3a6db44412861438c7826cb5c4bc6e9e550 /rs/java/android/renderscript/ProgramStore.java
parentdc7b2bc5e3b1d00f02b5c9a9dc8fde2a3c459bff (diff)
Fix race condition of removing surface.
mContainer.startingSurface can be replaced between posting mRemoveStartingWindow and actually surface.remove() is called. 1. removeStartingWindow is called, then mRemoveStartingWindow is posted to mHandler 2. transferStartingWindow is called, then mContainer.startingWindow is replaced with new surface. 3. mHandler pops the callback and surface.remove() is called. Here the remove is only called for replaced surface and never called for older surface. To fix this issue, surely removes the surface when the removeStartingWindow is called. Bug: 63156080 Bug: 63784898 Test: Watch /proc/<pid>/fd Change-Id: I55e2c1b8fba32b3a19603e6ad4743f07576abd48
Diffstat (limited to 'rs/java/android/renderscript/ProgramStore.java')
0 files changed, 0 insertions, 0 deletions