diff options
author | Eric Laurent <elaurent@google.com> | 2011-03-18 14:56:20 -0700 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2011-03-18 14:56:20 -0700 |
commit | f127e46304c21af95f3e17e70db4581b40d46e02 (patch) | |
tree | 152ca639c0c15aa5ba1af66661bb091f867f8e74 /libaudio/AudioHardware.cpp | |
parent | 44519e4a42f5dd023e27333e6fa94c65bf38eaf3 (diff) | |
parent | 2aedd44bc776c854093ac5e21453cd1218c8c1ea (diff) | |
download | device_samsung_crespo-f127e46304c21af95f3e17e70db4581b40d46e02.zip device_samsung_crespo-f127e46304c21af95f3e17e70db4581b40d46e02.tar.gz device_samsung_crespo-f127e46304c21af95f3e17e70db4581b40d46e02.tar.bz2 |
am 2aedd44b: Merge "Fix issue 4126225: setMicMute() execution time" into gingerbread
* commit '2aedd44bc776c854093ac5e21453cd1218c8c1ea':
Fix issue 4126225: setMicMute() execution time
Diffstat (limited to 'libaudio/AudioHardware.cpp')
-rw-r--r-- | libaudio/AudioHardware.cpp | 29 |
1 files changed, 20 insertions, 9 deletions
diff --git a/libaudio/AudioHardware.cpp b/libaudio/AudioHardware.cpp index 753c413..2ac7b67 100644 --- a/libaudio/AudioHardware.cpp +++ b/libaudio/AudioHardware.cpp @@ -1129,12 +1129,16 @@ status_t AudioHardware::AudioStreamOutALSA::standby() { if (mHardware == NULL) return NO_INIT; - AutoMutex lock(mLock); + mSleepReq = true; + { + AutoMutex lock(mLock); + mSleepReq = false; - { // scope for the AudioHardware lock - AutoMutex hwLock(mHardware->lock()); + { // scope for the AudioHardware lock + AutoMutex hwLock(mHardware->lock()); - doStandby_l(); + doStandby_l(); + } } return NO_ERROR; @@ -1246,9 +1250,10 @@ status_t AudioHardware::AudioStreamOutALSA::setParameters(const String8& keyValu if (mHardware == NULL) return NO_INIT; + mSleepReq = true; { AutoMutex lock(mLock); - + mSleepReq = false; if (param.getInt(String8(AudioParameter::keyRouting), device) == NO_ERROR) { if (device != 0) { @@ -1496,12 +1501,16 @@ status_t AudioHardware::AudioStreamInALSA::standby() { if (mHardware == NULL) return NO_INIT; - AutoMutex lock(mLock); + mSleepReq = true; + { + AutoMutex lock(mLock); + mSleepReq = false; - { // scope for AudioHardware lock - AutoMutex hwLock(mHardware->lock()); + { // scope for AudioHardware lock + AutoMutex hwLock(mHardware->lock()); - doStandby_l(); + doStandby_l(); + } } return NO_ERROR; } @@ -1633,8 +1642,10 @@ status_t AudioHardware::AudioStreamInALSA::setParameters(const String8& keyValue if (mHardware == NULL) return NO_INIT; + mSleepReq = true; { AutoMutex lock(mLock); + mSleepReq = false; if (param.getInt(String8(AudioParameter::keyInputSource), value) == NO_ERROR) { AutoMutex hwLock(mHardware->lock()); |