summaryrefslogtreecommitdiff
path: root/libutils/Unicode.cpp
diff options
context:
space:
mode:
authorTodd Poynor <toddpoynor@google.com>2017-06-26 14:34:38 -0700
committerTodd Poynor <toddpoynor@google.com>2017-06-27 11:58:17 -0700
commitfd68370074fab549f569d8b9a5bf3d7c535c47bc (patch)
tree28fe1f14a63d898dbac17b7b1ce7419009c734c8 /libutils/Unicode.cpp
parent4f5f558d3810348126ff651492849eaf748ccc2a (diff)
healthd: notify listeners using local copy of list, drop lock
Binder currently may service an incoming oneway transaction whenever an outbound oneway call is made (if there is already a pending incoming oneway call waiting). The unexpected nested method call blocks forever on a recursive mutex acquire because healthd is single- threaded. The binder behavior is considered a bug and may change in the future. For now, work around this in healthd. Make a local copy of the listeners list, then drop the lock and perform the outbound calls on the local copy of the list. Bug: 38201220 Test: Marlin with modified client calling scheduleUpdate() repeatedly Change-Id: If35c2847556245921e2aff808ff747bb60356811
Diffstat (limited to 'libutils/Unicode.cpp')
0 files changed, 0 insertions, 0 deletions