diff --git a/RELEASENOTES.md b/RELEASENOTES.md index 0e70059a0f..fc3a38e899 100644 --- a/RELEASENOTES.md +++ b/RELEASENOTES.md @@ -112,6 +112,8 @@ * Add `TransformationRequest` for specifying the transformation options. * Allow multiple listeners to be registered. * Fix Transformer being stuck when the codec output is partially read. + * Fix potential NPE in `Transformer.getProgress` when releasing the muxer + throws. * MediaSession extension: * Remove deprecated call to `onStop(/* reset= */ true)` and provide an opt-out flag for apps that don't want to clear the playlist on stop. diff --git a/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/Transformer.java b/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/Transformer.java index 67c27f77b6..e1f3348bf0 100644 --- a/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/Transformer.java +++ b/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/Transformer.java @@ -774,6 +774,7 @@ public final class Transformer { */ private void releaseResources(boolean forCancellation) throws TransformationException { verifyApplicationThread(); + progressState = PROGRESS_STATE_NO_TRANSFORMATION; if (player != null) { player.release(); player = null; @@ -787,7 +788,6 @@ public final class Transformer { } muxerWrapper = null; } - progressState = PROGRESS_STATE_NO_TRANSFORMATION; } private void verifyApplicationThread() {