summaryrefslogtreecommitdiffstats
path: root/services
diff options
context:
space:
mode:
authorGlenn Kasten <gkasten@google.com>2011-12-15 15:46:46 -0800
committerGlenn Kasten <gkasten@google.com>2011-12-15 15:55:51 -0800
commitfba380a0b2c62684ce4272a05165965bae29d6a1 (patch)
treed0a89a2c45aa09a838c5f93108a3be8f5a80d4e5 /services
parenteebeceec684a36222b4559e3157b0db04c0a67ed (diff)
downloadframeworks_av-fba380a0b2c62684ce4272a05165965bae29d6a1.zip
frameworks_av-fba380a0b2c62684ce4272a05165965bae29d6a1.tar.gz
frameworks_av-fba380a0b2c62684ce4272a05165965bae29d6a1.tar.bz2
setActiveTrack and setBufferProvider can't fail
Return void, not status_t, from setActiveTrack and setBufferProvider. These methods returned status_t, but the callers never checked the return value. Since these aren't externally visible APIs, they now return void, and assert on bad input parameters. Change-Id: I530ed29484596ae41e8659826ca425149c51c2a1
Diffstat (limited to 'services')
-rw-r--r--services/audioflinger/AudioMixer.cpp15
-rw-r--r--services/audioflinger/AudioMixer.h4
2 files changed, 9 insertions, 10 deletions
diff --git a/services/audioflinger/AudioMixer.cpp b/services/audioflinger/AudioMixer.cpp
index 7c7fa56..74db59e 100644
--- a/services/audioflinger/AudioMixer.cpp
+++ b/services/audioflinger/AudioMixer.cpp
@@ -18,6 +18,7 @@
#define LOG_TAG "AudioMixer"
//#define LOG_NDEBUG 0
+#include <assert.h>
#include <stdint.h>
#include <string.h>
#include <stdlib.h>
@@ -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 75c9170..6f31c5d 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; }