Index: media/formats/mpeg/mpeg_audio_stream_parser_base.cc |
diff --git a/media/formats/mpeg/mpeg_audio_stream_parser_base.cc b/media/formats/mpeg/mpeg_audio_stream_parser_base.cc |
index 4dc9df7982a55b185f2d16cf12a5fb757a436be8..1ca70a75965d01be4b36d8c69a5b3256ace196b5 100644 |
--- a/media/formats/mpeg/mpeg_audio_stream_parser_base.cc |
+++ b/media/formats/mpeg/mpeg_audio_stream_parser_base.cc |
@@ -61,7 +61,7 @@ void MPEGAudioStreamParserBase::Init( |
bool ignore_text_tracks, |
const EncryptedMediaInitDataCB& encrypted_media_init_data_cb, |
const NewMediaSegmentCB& new_segment_cb, |
- const base::Closure& end_of_segment_cb, |
+ const EndMediaSegmentCB& end_of_segment_cb, |
const scoped_refptr<MediaLog>& media_log) { |
DVLOG(1) << __FUNCTION__; |
DCHECK_EQ(state_, UNINITIALIZED); |
@@ -411,7 +411,8 @@ bool MPEGAudioStreamParserBase::SendBuffers(BufferQueue* buffers, |
if (end_of_segment) { |
in_media_segment_ = false; |
- end_of_segment_cb_.Run(); |
+ if (!end_of_segment_cb_.Run()) |
+ return false; |
} |
timestamp_helper_->SetBaseTimestamp(base::TimeDelta()); |