diff --git a/services/audioflinger/AudioMixer.cpp b/services/audioflinger/AudioMixer.cpp index 7c7fa5618e9be..74db59e6f6adc 100644 --- a/services/audioflinger/AudioMixer.cpp +++ b/services/audioflinger/AudioMixer.cpp @@ -18,6 +18,7 @@ #define LOG_TAG "AudioMixer" //#define LOG_NDEBUG 0 +#include #include #include #include @@ -169,13 +170,12 @@ status_t AudioMixer::disable(int name) return NO_ERROR; } -status_t AudioMixer::setActiveTrack(int track) +void AudioMixer::setActiveTrack(int track) { - if (uint32_t(track-TRACK0) >= MAX_NUM_TRACKS) { - return BAD_VALUE; - } - mActiveTrack = track - TRACK0; - return NO_ERROR; + // this also catches track < TRACK0 + track -= TRACK0; + assert(uint32_t(track) < MAX_NUM_TRACKS); + mActiveTrack = track; } status_t AudioMixer::setParameter(int target, int name, void *value) @@ -332,10 +332,9 @@ void AudioMixer::track_t::adjustVolumeRamp(bool aux) } -status_t AudioMixer::setBufferProvider(AudioBufferProvider* buffer) +void AudioMixer::setBufferProvider(AudioBufferProvider* buffer) { mState.tracks[ mActiveTrack ].bufferProvider = buffer; - return NO_ERROR; } diff --git a/services/audioflinger/AudioMixer.h b/services/audioflinger/AudioMixer.h index 75c91700e3525..6f31c5d32d911 100644 --- a/services/audioflinger/AudioMixer.h +++ b/services/audioflinger/AudioMixer.h @@ -81,10 +81,10 @@ public: status_t enable(int name); status_t disable(int name); - status_t setActiveTrack(int track); + void setActiveTrack(int track); status_t setParameter(int target, int name, void *value); - status_t setBufferProvider(AudioBufferProvider* bufferProvider); + void setBufferProvider(AudioBufferProvider* bufferProvider); void process(); uint32_t trackNames() const { return mTrackNames; }