Index: media/filters/audio_decoder_selector.cc |
diff --git a/media/filters/audio_decoder_selector.cc b/media/filters/audio_decoder_selector.cc |
index c9e77ec8c918dc8a3047a85ed49d8f8f0a33ad2d..c43a571dc1a5fba82bbcc47812c7086628e34a6e 100644 |
--- a/media/filters/audio_decoder_selector.cc |
+++ b/media/filters/audio_decoder_selector.cc |
@@ -90,10 +90,10 @@ void AudioDecoderSelector::Abort() { |
weak_ptr_factory_.InvalidateWeakPtrs(); |
if (audio_decoder_) { |
- // AudioDecoder doesn't provide a Stop() method. Also, |decrypted_stream_| |
- // is either NULL or already initialized. We don't need to Reset() |
- // |decrypted_stream_| in either case. |
- ReturnNullDecoder(); |
+ // |decrypted_stream_| is either NULL or already initialized. We don't |
+ // need to Reset() |decrypted_stream_| in either case. |
+ audio_decoder_->Stop(base::Bind(&AudioDecoderSelector::ReturnNullDecoder, |
+ weak_ptr_factory_.GetWeakPtr())); |
return; |
} |