diff options
author | 2021-06-30 23:07:13 +0000 | |
---|---|---|
committer | 2021-06-30 23:50:27 +0000 | |
commit | 91a96b6474aa999790e4fabfa8ab7240c61c7490 (patch) | |
tree | ffb424adb5430c1e66fd5d34e09f555775fb7a56 /libs/binder/PermissionController.cpp | |
parent | 07ac6eefffa4822a2e40c2e497bd4a5dae402958 (diff) |
libbinder_ndk: fix race related to bpbinder
In a recent CL, I incorrectly stated in a comment (which is now
corrected here) that ABpBinder::onLastStrongRef can assume the
underlying binder also has no reference count. This is simply wrong (and
such a comment should have came with an assertion).
When this was not true (you receive a binder at the same time that
another thread is dropping the last NDK-layer reference to that binder),
the detachObject call was deleting the ABpBinderTag::Value beneath the
code in lookupOrCreateFromBinder that is looking up this binder.
Bug: 192321823
Test: CtsNdkBinderTestCases (more to come)
Change-Id: I71b1081b6d6ca179d17af6bb1e4a1bb3dd4b109b
Diffstat (limited to 'libs/binder/PermissionController.cpp')
0 files changed, 0 insertions, 0 deletions