Merge changes I6923e891,Id5c62c31
* changes:
audioflinger: effect: fix deadlock after dumpsys
audioeffect: fix segfault on device effect configuration
diff --git a/services/audioflinger/Effects.cpp b/services/audioflinger/Effects.cpp
index 35edf3a..8cca719 100644
--- a/services/audioflinger/Effects.cpp
+++ b/services/audioflinger/Effects.cpp
@@ -1006,8 +1006,9 @@
// mConfig.outputCfg.buffer.frameCount cannot be zero.
mMaxDisableWaitCnt = (uint32_t)std::max(
(uint64_t)1, // mMaxDisableWaitCnt must be greater than zero.
- (uint64_t)MAX_DISABLE_TIME_MS * mConfig.outputCfg.samplingRate
- / ((uint64_t)1000 * mConfig.outputCfg.buffer.frameCount));
+ (uint64_t)mConfig.outputCfg.buffer.frameCount == 0 ? 1
+ : (MAX_DISABLE_TIME_MS * mConfig.outputCfg.samplingRate
+ / ((uint64_t)1000 * mConfig.outputCfg.buffer.frameCount)));
exit:
// TODO: consider clearing mConfig on error.
@@ -3520,7 +3521,7 @@
}
if (locked) {
- mLock.unlock();
+ mProxyLock.unlock();
}
}