aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorkwiberg@webrtc.org <kwiberg@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d>2014-07-17 08:18:33 +0000
committerkwiberg@webrtc.org <kwiberg@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d>2014-07-17 08:18:33 +0000
commitaf93fc08a19e75bc0b3fab393345c29b2094391d (patch)
tree6b8f56da35235d0522da76f50c9321ded5fa1c2b
parent2ade42bd96cecf9fa5fa6791003e67ade204afb1 (diff)
downloadwebrtc-af93fc08a19e75bc0b3fab393345c29b2094391d.tar.gz
AudioBuffer: Let ChannelBuffer handle bounds checking of channel parameter
R=aluebs@webrtc.org, minyue@webrtc.org Review URL: https://webrtc-codereview.appspot.com/13019004 git-svn-id: http://webrtc.googlecode.com/svn/trunk@6714 4adac7df-926f-26a2-2b94-8c16560cd09d
-rw-r--r--webrtc/modules/audio_processing/audio_buffer.cc11
-rw-r--r--webrtc/modules/audio_processing/common.h2
2 files changed, 1 insertions, 12 deletions
diff --git a/webrtc/modules/audio_processing/audio_buffer.cc b/webrtc/modules/audio_processing/audio_buffer.cc
index 35e1eb7c0b..7f579b0d92 100644
--- a/webrtc/modules/audio_processing/audio_buffer.cc
+++ b/webrtc/modules/audio_processing/audio_buffer.cc
@@ -285,7 +285,6 @@ void AudioBuffer::InitForNewData() {
}
const int16_t* AudioBuffer::data(int channel) const {
- assert(channel >= 0 && channel < num_proc_channels_);
return channels_->ibuf()->channel(channel);
}
@@ -295,7 +294,6 @@ int16_t* AudioBuffer::data(int channel) {
}
const float* AudioBuffer::data_f(int channel) const {
- assert(channel >= 0 && channel < num_proc_channels_);
return channels_->fbuf()->channel(channel);
}
@@ -305,7 +303,6 @@ float* AudioBuffer::data_f(int channel) {
}
const int16_t* AudioBuffer::low_pass_split_data(int channel) const {
- assert(channel >= 0 && channel < num_proc_channels_);
return split_channels_.get() ? split_channels_->low_channel(channel)
: data(channel);
}
@@ -316,7 +313,6 @@ int16_t* AudioBuffer::low_pass_split_data(int channel) {
}
const float* AudioBuffer::low_pass_split_data_f(int channel) const {
- assert(channel >= 0 && channel < num_proc_channels_);
return split_channels_.get() ? split_channels_->low_channel_f(channel)
: data_f(channel);
}
@@ -327,7 +323,6 @@ float* AudioBuffer::low_pass_split_data_f(int channel) {
}
const int16_t* AudioBuffer::high_pass_split_data(int channel) const {
- assert(channel >= 0 && channel < num_proc_channels_);
return split_channels_.get() ? split_channels_->high_channel(channel) : NULL;
}
@@ -337,7 +332,6 @@ int16_t* AudioBuffer::high_pass_split_data(int channel) {
}
const float* AudioBuffer::high_pass_split_data_f(int channel) const {
- assert(channel >= 0 && channel < num_proc_channels_);
return split_channels_.get() ? split_channels_->high_channel_f(channel)
: NULL;
}
@@ -348,19 +342,14 @@ float* AudioBuffer::high_pass_split_data_f(int channel) {
}
const int16_t* AudioBuffer::mixed_data(int channel) const {
- assert(channel >= 0 && channel < num_mixed_channels_);
-
return mixed_channels_->channel(channel);
}
const int16_t* AudioBuffer::mixed_low_pass_data(int channel) const {
- assert(channel >= 0 && channel < num_mixed_low_pass_channels_);
-
return mixed_low_pass_channels_->channel(channel);
}
const int16_t* AudioBuffer::low_pass_reference(int channel) const {
- assert(channel >= 0 && channel < num_proc_channels_);
if (!reference_copied_) {
return NULL;
}
diff --git a/webrtc/modules/audio_processing/common.h b/webrtc/modules/audio_processing/common.h
index 42454df299..10249cc2bb 100644
--- a/webrtc/modules/audio_processing/common.h
+++ b/webrtc/modules/audio_processing/common.h
@@ -55,7 +55,7 @@ class ChannelBuffer {
T* data() { return data_.get(); }
T* channel(int i) {
- assert(i < num_channels_);
+ assert(i >= 0 && i < num_channels_);
return channels_[i];
}
T** channels() { return channels_.get(); }