AudioFlinger: getEffectThread_l return with first thread
Also remove ALOG_ASSERT in getEffectThread_l as it only work with
verbose log mode.
Bug: 324983804
Test: atest CtsMediaAudioTestCases
Change-Id: I5501e12e10c3461c76833581ea880d8bbf27ce02
diff --git a/services/audioflinger/AudioFlinger.cpp b/services/audioflinger/AudioFlinger.cpp
index 9d69284..ba7f647 100644
--- a/services/audioflinger/AudioFlinger.cpp
+++ b/services/audioflinger/AudioFlinger.cpp
@@ -2171,30 +2171,24 @@
sp<IAfThreadBase> thread;
for (size_t i = 0; i < mPlaybackThreads.size(); i++) {
- if (mPlaybackThreads.valueAt(i)->getEffect(sessionId, effectId) != 0) {
- ALOG_ASSERT(thread == 0);
- thread = mPlaybackThreads.valueAt(i);
+ thread = mPlaybackThreads.valueAt(i);
+ if (thread->getEffect(sessionId, effectId) != 0) {
+ return thread;
}
}
- if (thread != nullptr) {
- return thread;
- }
for (size_t i = 0; i < mRecordThreads.size(); i++) {
- if (mRecordThreads.valueAt(i)->getEffect(sessionId, effectId) != 0) {
- ALOG_ASSERT(thread == 0);
- thread = mRecordThreads.valueAt(i);
+ thread = mRecordThreads.valueAt(i);
+ if (thread->getEffect(sessionId, effectId) != 0) {
+ return thread;
}
}
- if (thread != nullptr) {
- return thread;
- }
for (size_t i = 0; i < mMmapThreads.size(); i++) {
- if (mMmapThreads.valueAt(i)->getEffect(sessionId, effectId) != 0) {
- ALOG_ASSERT(thread == 0);
- thread = mMmapThreads.valueAt(i);
+ thread = mMmapThreads.valueAt(i);
+ if (thread->getEffect(sessionId, effectId) != 0) {
+ return thread;
}
}
- return thread;
+ return nullptr;
}
// ----------------------------------------------------------------------------