| Index: media/base/text_renderer.cc
|
| diff --git a/media/base/text_renderer.cc b/media/base/text_renderer.cc
|
| index 63ad27a2ba72bbbb62288ab48626df98e9b7e6b1..45f61b45a761f1eb7dbe8341b1dd517b76f4853f 100644
|
| --- a/media/base/text_renderer.cc
|
| +++ b/media/base/text_renderer.cc
|
| @@ -90,6 +90,7 @@ void TextRenderer::Flush(const base::Closure& callback) {
|
| for (TextTrackStateMap::iterator itr = text_track_state_map_.begin();
|
| itr != text_track_state_map_.end(); ++itr) {
|
| pending_eos_set_.insert(itr->first);
|
| + itr->second->text_ranges_.Reset();
|
| }
|
| DCHECK_EQ(pending_eos_set_.size(), text_track_state_map_.size());
|
| callback.Run();
|
| @@ -306,12 +307,15 @@ void TextRenderer::CueReady(
|
| }
|
|
|
| base::TimeDelta start = text_cue->timestamp();
|
| - base::TimeDelta end = start + text_cue->duration();
|
|
|
| - state->text_track->addWebVTTCue(start, end,
|
| - text_cue->id(),
|
| - text_cue->text(),
|
| - text_cue->settings());
|
| + if (state->text_ranges_.AddCue(start)) {
|
| + base::TimeDelta end = start + text_cue->duration();
|
| +
|
| + state->text_track->addWebVTTCue(start, end,
|
| + text_cue->id(),
|
| + text_cue->text(),
|
| + text_cue->settings());
|
| + }
|
|
|
| if (state_ == kPlaying) {
|
| Read(state, text_stream);
|
|
|