audio: several concurrent capture fixes
Make sure AudioRecord clients are invalidated synchronously
when closing an input stream instead of when the capture thread
exits.
Fix AudioPolicyManager::getInputForDevice() logic to make sure that
not only the first opened input encountered is considered when looking
for a compatible input to reuse for concurrent capture.
Bug: 22702906
Test: run CTS test
Change-Id: I7f69609d4ee70a37ab06753ff970b12df17d885b
diff --git a/services/audioflinger/Threads.h b/services/audioflinger/Threads.h
index 3fb0b07..9d0c32c 100644
--- a/services/audioflinger/Threads.h
+++ b/services/audioflinger/Threads.h
@@ -1346,6 +1346,7 @@
// Thread virtuals
virtual bool threadLoop();
+ virtual void preExit();
// RefBase
virtual void onFirstRef();