diff options
author | Ricardo Cerqueira <cyanogenmod@cerqueira.org> | 2014-06-03 02:16:18 +0100 |
---|---|---|
committer | Ricardo Cerqueira <cyanogenmod@cerqueira.org> | 2014-06-03 02:16:18 +0100 |
commit | 418ac5ee222c2734af677d92cf318f2b033fd7bd (patch) | |
tree | 08e2e3db703c977325d4d0fb15d01831a888b5eb /variablespeed/jni/variablespeed.cc | |
parent | aecf604ef14f07e078c309b015c2333e22640789 (diff) | |
parent | ce2b95ae200332495b348be07f77fe60b6c23dcc (diff) | |
download | android_frameworks_ex-418ac5ee222c2734af677d92cf318f2b033fd7bd.tar.gz android_frameworks_ex-418ac5ee222c2734af677d92cf318f2b033fd7bd.tar.bz2 android_frameworks_ex-418ac5ee222c2734af677d92cf318f2b033fd7bd.zip |
Merge tag 'android-4.4.3_r1' into HEADcm-11.0-XNPH44S-bacon-5fa8c79c0bcm-11.0-XNPH33R-bacon-3628510d76cm-11.0-XNPH30O-bacon-4f280f505acm-11.0-XNPH05Q-tomato-9828f8e9cccm-11.0-XNPH05Q-bacon-5229c4ef56stable/cm-11.0-XNF9Xstable/cm-11.0-XNF8Ystable/cm-11.0shipping/cm-11.0
Android 4.4.3 release 1
Diffstat (limited to 'variablespeed/jni/variablespeed.cc')
-rw-r--r-- | variablespeed/jni/variablespeed.cc | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/variablespeed/jni/variablespeed.cc b/variablespeed/jni/variablespeed.cc index 73ac609..4bdbbcc 100644 --- a/variablespeed/jni/variablespeed.cc +++ b/variablespeed/jni/variablespeed.cc @@ -129,14 +129,21 @@ void AudioEngine::SetEngine(AudioEngine* engine) { audioEngine_ = engine; } +bool AudioEngine::CompareAndSetEngine(AudioEngine* expect, AudioEngine* update) { + android::Mutex::Autolock autoLock(publishEngineLock_); + if (audioEngine_ == expect) { + DeleteEngine(); + audioEngine_ = update; + return true; + } + return false; +} + void AudioEngine::DeleteEngine() { - if (audioEngine_ == NULL) { - LOGE("you haven't initialized the audio engine"); - CHECK(false); - return; + if (audioEngine_ != NULL) { + delete audioEngine_; + audioEngine_ = NULL; } - delete audioEngine_; - audioEngine_ = NULL; } // **************************************************************************** |