aaudio: set to SHARED when EXCLUSIVE fails
SHARED streams and endpoints were being created with sharing mode
set to EXCLUSIVE. This was confusing the close() code and caused a hang.
Now we create a modified Request object with the sharing mode set
correctly.
Bug: 112709847
Test: Hack AAudioServiceEndpointMMAP so isBufferShareable is false.
Test: 'adb shell write_sine_callback -pl -x -s2' should not hang.
Change-Id: I7a5c8260beaffdd706f34d35ef00a61b072adb1d
diff --git a/services/oboeservice/AAudioEndpointManager.h b/services/oboeservice/AAudioEndpointManager.h
index 193bdee..ba17853 100644
--- a/services/oboeservice/AAudioEndpointManager.h
+++ b/services/oboeservice/AAudioEndpointManager.h
@@ -56,8 +56,7 @@
* @return endpoint or null
*/
android::sp<AAudioServiceEndpoint> openEndpoint(android::AAudioService &audioService,
- const aaudio::AAudioStreamRequest &request,
- aaudio_sharing_mode_t sharingMode);
+ const aaudio::AAudioStreamRequest &request);
void closeEndpoint(android::sp<AAudioServiceEndpoint> serviceEndpoint);