Fix thread safety in libaudioclient tests
The code of the tests was prone to two classical issues: - lacking of synchronization when accessing shared data; - use of improper locking patterns leading to deadlocks. The latter was the cause for the flakiness of audiorouting_tests. Holding a lock in `AudioPlayback::stop` was deadlocking audio thread stopping due to a call to `AudioPlayback::onBufferEnd` Bug: 329261852 Bug: 329528237 Bug: 330520703 Bug: 343592164 Test: atest --iterations=100 audiorouting_tests Test: atest --iterations=10 audiorecord_tests Change-Id: I38224c49cb5583af5f1ba469f3bb956b3b600d57
Loading
Please register or sign in to comment