diff --git a/library/src/main/java/com/google/android/exoplayer/FrameworkSampleSource.java b/library/src/main/java/com/google/android/exoplayer/FrameworkSampleSource.java index afe735c5b2..bfc4ca64dd 100644 --- a/library/src/main/java/com/google/android/exoplayer/FrameworkSampleSource.java +++ b/library/src/main/java/com/google/android/exoplayer/FrameworkSampleSource.java @@ -234,7 +234,7 @@ public final class FrameworkSampleSource implements SampleSource { @Override public void release() { Assertions.checkState(remainingReleaseCount > 0); - if (--remainingReleaseCount == 0) { + if (--remainingReleaseCount == 0 && extractor != null) { extractor.release(); extractor = null; } diff --git a/library/src/main/java/com/google/android/exoplayer/extractor/ExtractorSampleSource.java b/library/src/main/java/com/google/android/exoplayer/extractor/ExtractorSampleSource.java index 7a14a5a6d1..d57d94f225 100644 --- a/library/src/main/java/com/google/android/exoplayer/extractor/ExtractorSampleSource.java +++ b/library/src/main/java/com/google/android/exoplayer/extractor/ExtractorSampleSource.java @@ -313,7 +313,7 @@ public class ExtractorSampleSource implements SampleSource, ExtractorOutput, Loa @Override public void release() { Assertions.checkState(remainingReleaseCount > 0); - if (--remainingReleaseCount == 0) { + if (--remainingReleaseCount == 0 && loader != null) { loader.release(); loader = null; }