diff --git a/audio/aidl/default/StreamSwitcher.cpp b/audio/aidl/default/StreamSwitcher.cpp index ed4cc8afb2..8ba15a83e6 100644 --- a/audio/aidl/default/StreamSwitcher.cpp +++ b/audio/aidl/default/StreamSwitcher.cpp @@ -126,11 +126,10 @@ ndk::ScopedAStatus StreamSwitcher::removeEffect(const std::shared_ptr& LOG(ERROR) << __func__ << ": stream was closed"; return ndk::ScopedAStatus::fromExceptionCode(EX_ILLEGAL_STATE); } - for (auto it = mEffects.begin(); it != mEffects.end();) { + for (auto it = mEffects.begin(); it != mEffects.end(); ++it) { if ((*it)->asBinder() == in_effect->asBinder()) { - it = mEffects.erase(it); - } else { - ++it; + mEffects.erase(it); + break; } } return !mIsStubStream ? mStream->removeEffect(in_effect) : ndk::ScopedAStatus::ok(); @@ -201,6 +200,10 @@ ndk::ScopedAStatus StreamSwitcher::setConnectedDevices(const std::vectorinitInstance(nullptr); !status.isOk()) { + if (mIsStubStream) { + LOG(FATAL) << __func__ + << ": failed to initialize stub stream: " << status.getDescription(); + } // Need to close the current failed stream, and report an error. // Since we can't operate without a stream implementation, put a stub in. RETURN_STATUS_IF_ERROR(closeCurrentStream(false /*validateStreamState*/)); diff --git a/audio/aidl/default/alsa/Mixer.h b/audio/aidl/default/alsa/Mixer.h index 78728c296e..8fba1e0753 100644 --- a/audio/aidl/default/alsa/Mixer.h +++ b/audio/aidl/default/alsa/Mixer.h @@ -72,7 +72,7 @@ class Mixer { std::mutex mMixerAccess; // The mixer object is owned by ALSA and will be released when the mixer is closed. struct mixer* const mMixer; - // `mMixerControls` will only be initialized in constructor. After that, it wil only be + // `mMixerControls` will only be initialized in constructor. After that, it will only be // read but not be modified. Each mixer_ctl object is owned by ALSA, it's life span is // the same as of the mixer itself. const Controls mMixerControls; diff --git a/audio/aidl/default/include/core-impl/StreamSwitcher.h b/audio/aidl/default/include/core-impl/StreamSwitcher.h index 3086ef98ae..5764ad6018 100644 --- a/audio/aidl/default/include/core-impl/StreamSwitcher.h +++ b/audio/aidl/default/include/core-impl/StreamSwitcher.h @@ -20,7 +20,7 @@ namespace aidl::android::hardware::audio::core { -// 'StreamSwitcher' is implementation of 'StreamCommonInterface' which allows +// 'StreamSwitcher' is an implementation of 'StreamCommonInterface' which allows // dynamically switching the underlying stream implementation based on currently // connected devices. This is achieved by replacing inheritance from // 'StreamCommonImpl' with owning an instance of it. StreamSwitcher must be