From bcbe3106817360258e30159680cc297e2910a755 Mon Sep 17 00:00:00 2001 From: andrewlewis Date: Fri, 10 Jul 2020 09:42:53 +0100 Subject: [PATCH] Use MediaPeriodId for ad preparation errors PiperOrigin-RevId: 320565543 --- .../exoplayer2/source/ads/AdsMediaSource.java | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/library/core/src/main/java/com/google/android/exoplayer2/source/ads/AdsMediaSource.java b/library/core/src/main/java/com/google/android/exoplayer2/source/ads/AdsMediaSource.java index ce45959325..ddc4680613 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/source/ads/AdsMediaSource.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/source/ads/AdsMediaSource.java @@ -379,13 +379,9 @@ public final class AdsMediaSource extends CompositeMediaSource { private final class AdPrepareErrorListener implements MaskingMediaPeriod.PrepareErrorListener { private final Uri adUri; - private final int adGroupIndex; - private final int adIndexInAdGroup; - public AdPrepareErrorListener(Uri adUri, int adGroupIndex, int adIndexInAdGroup) { + public AdPrepareErrorListener(Uri adUri) { this.adUri = adUri; - this.adGroupIndex = adGroupIndex; - this.adIndexInAdGroup = adIndexInAdGroup; } @Override @@ -400,7 +396,9 @@ public final class AdsMediaSource extends CompositeMediaSource { AdLoadException.createForAd(exception), /* wasCanceled= */ true); mainHandler.post( - () -> adsLoader.handlePrepareError(adGroupIndex, adIndexInAdGroup, exception)); + () -> + adsLoader.handlePrepareError( + mediaPeriodId.adGroupIndex, mediaPeriodId.adIndexInAdGroup, exception)); } } @@ -420,8 +418,7 @@ public final class AdsMediaSource extends CompositeMediaSource { Uri adUri, MediaPeriodId id, Allocator allocator, long startPositionUs) { MaskingMediaPeriod maskingMediaPeriod = new MaskingMediaPeriod(adMediaSource, id, allocator, startPositionUs); - maskingMediaPeriod.setPrepareErrorListener( - new AdPrepareErrorListener(adUri, id.adGroupIndex, id.adIndexInAdGroup)); + maskingMediaPeriod.setPrepareErrorListener(new AdPrepareErrorListener(adUri)); activeMediaPeriods.add(maskingMediaPeriod); if (timeline != null) { Object periodUid = timeline.getUidOfPeriod(/* periodIndex= */ 0);