summaryrefslogtreecommitdiffstats
path: root/services
diff options
context:
space:
mode:
authorAndy Hung <hunga@google.com>2019-01-11 11:01:11 -0800
committerandroid-build-merger <android-build-merger@google.com>2019-01-11 11:01:11 -0800
commitef52b30f9cc947ce2bbfcdab59e33bccb967d5df (patch)
tree509da6104469c8c0e80c143581ec87ce6ea58427 /services
parent093bba3a2e7e696cdad4fd20844bfb1739db7280 (diff)
parenta41770b682117fdfc20236fbc45d975099f9147a (diff)
downloadframeworks_av-ef52b30f9cc947ce2bbfcdab59e33bccb967d5df.tar.gz
frameworks_av-ef52b30f9cc947ce2bbfcdab59e33bccb967d5df.tar.bz2
frameworks_av-ef52b30f9cc947ce2bbfcdab59e33bccb967d5df.zip
AudioFlinger: put effect desc lookup under mutex for createEffect
am: a41770b682 Change-Id: I496c058113e7f5b36d049cca1a978e191b987142
Diffstat (limited to 'services')
-rw-r--r--services/audioflinger/AudioFlinger.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/services/audioflinger/AudioFlinger.cpp b/services/audioflinger/AudioFlinger.cpp
index 0df9a39c92..23cdf7c370 100644
--- a/services/audioflinger/AudioFlinger.cpp
+++ b/services/audioflinger/AudioFlinger.cpp
@@ -2882,6 +2882,8 @@ sp<IEffect> AudioFlinger::createEffect(
}
{
+ Mutex::Autolock _l(mLock);
+
if (!EffectsFactoryHalInterface::isNullUuid(&pDesc->uuid)) {
// if uuid is specified, request effect descriptor
lStatus = mEffectsFactoryHal->getDescriptor(&pDesc->uuid, &desc);
@@ -2937,6 +2939,8 @@ sp<IEffect> AudioFlinger::createEffect(
desc = d;
}
}
+ }
+ {
// Do not allow auxiliary effects on a session different from 0 (output mix)
if (sessionId != AUDIO_SESSION_OUTPUT_MIX &&