| Index: remoting/codec/audio_decoder_verbatim.cc
|
| diff --git a/remoting/codec/audio_decoder_verbatim.cc b/remoting/codec/audio_decoder_verbatim.cc
|
| index 8a69705e5d7bb160a64eab69638ac3125862647e..903cb3f298b824a34928ac795c8566521321f9fa 100644
|
| --- a/remoting/codec/audio_decoder_verbatim.cc
|
| +++ b/remoting/codec/audio_decoder_verbatim.cc
|
| @@ -17,7 +17,13 @@ AudioDecoderVerbatim::~AudioDecoderVerbatim() {
|
|
|
| scoped_ptr<AudioPacket> AudioDecoderVerbatim::Decode(
|
| scoped_ptr<AudioPacket> packet) {
|
| - DCHECK_EQ(AudioPacket::ENCODING_RAW, packet->encoding());
|
| + // Return a null scoped_ptr if we get a corrupted packet.
|
| + if ((packet->encoding() != AudioPacket::ENCODING_RAW) ||
|
| + (packet->data_size() != 1) ||
|
| + (packet->sampling_rate() == AudioPacket::SAMPLING_RATE_INVALID) ||
|
| + (packet->bytes_per_sample() == AudioPacket::BYTES_PER_SAMPLE_INVALID)) {
|
| + return scoped_ptr<AudioPacket>();
|
| + }
|
| return packet.Pass();
|
| }
|
|
|
|
|