Add state testing to RecordThread "Microphone" methods
RecordThread::getActiveMicrophones()
RecordThread::setPreferredMicrophoneDirection()
RecordThread::setPreferredMicrophoneFieldDimension()
Bug: 184367936
Test: build, install...
Change-Id: I0adc00b56270bc0b53c79640f6149b83172d188d
Merged-In: I0adc00b56270bc0b53c79640f6149b83172d188d
(cherry picked from commit 7d323f1d1f2229b46511d59a0d6413a963987d51)
diff --git a/services/audioflinger/Threads.cpp b/services/audioflinger/Threads.cpp
index 4b8d919..997f24a 100644
--- a/services/audioflinger/Threads.cpp
+++ b/services/audioflinger/Threads.cpp
@@ -8108,6 +8108,9 @@
{
ALOGV("RecordThread::getActiveMicrophones");
AutoMutex _l(mLock);
+ if (mInput == nullptr || mInput->stream == nullptr) {
+ return NO_INIT;
+ }
status_t status = mInput->stream->getActiveMicrophones(activeMicrophones);
return status;
}
@@ -8117,6 +8120,9 @@
{
ALOGV("setPreferredMicrophoneDirection(%d)", direction);
AutoMutex _l(mLock);
+ if (mInput == nullptr || mInput->stream == nullptr) {
+ return NO_INIT;
+ }
return mInput->stream->setPreferredMicrophoneDirection(direction);
}
@@ -8124,6 +8130,9 @@
{
ALOGV("setPreferredMicrophoneFieldDimension(%f)", zoom);
AutoMutex _l(mLock);
+ if (mInput == nullptr || mInput->stream == nullptr) {
+ return NO_INIT;
+ }
return mInput->stream->setPreferredMicrophoneFieldDimension(zoom);
}