From 9154d54df9fe3d5e6699ab6c780f6148be406f64 Mon Sep 17 00:00:00 2001 From: tonihei Date: Wed, 21 Jun 2017 04:00:02 -0700 Subject: [PATCH] Fix resolveSubsequentPeriod in EPII. getNextPeriod might return C.INDEX_UNSET. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=159676949 --- .../com/google/android/exoplayer2/ExoPlayerImplInternal.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/library/core/src/main/java/com/google/android/exoplayer2/ExoPlayerImplInternal.java b/library/core/src/main/java/com/google/android/exoplayer2/ExoPlayerImplInternal.java index bcfcc4451b..38b9648162 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/ExoPlayerImplInternal.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/ExoPlayerImplInternal.java @@ -1083,6 +1083,10 @@ import java.io.IOException; int maxIterations = oldTimeline.getPeriodCount(); for (int i = 0; i < maxIterations && newPeriodIndex == C.INDEX_UNSET; i++) { oldPeriodIndex = oldTimeline.getNextPeriodIndex(oldPeriodIndex, period, window, repeatMode); + if (oldPeriodIndex == C.INDEX_UNSET) { + // We've reached the end of the old timeline. + break; + } newPeriodIndex = newTimeline.getIndexOfPeriod( oldTimeline.getPeriod(oldPeriodIndex, period, true).uid); }