From b2222f8cb7bc44d2f69c6037a015923623b7d46a Mon Sep 17 00:00:00 2001 From: vitekn Date: Fri, 21 Oct 2016 13:07:08 +0300 Subject: [PATCH] Null pointer exception fixed pesPayloadReader can be null here because DefaultStreamReader.init() can return null on unknown streamId. If we have a junk transport stream in our content an exception will be thrown. --- .../google/android/exoplayer2/extractor/ts/TsExtractor.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/library/src/main/java/com/google/android/exoplayer2/extractor/ts/TsExtractor.java b/library/src/main/java/com/google/android/exoplayer2/extractor/ts/TsExtractor.java index bac362d711..14b3a0cce6 100644 --- a/library/src/main/java/com/google/android/exoplayer2/extractor/ts/TsExtractor.java +++ b/library/src/main/java/com/google/android/exoplayer2/extractor/ts/TsExtractor.java @@ -467,7 +467,9 @@ public final class TsExtractor implements Extractor { pesPayloadReader = id3Reader; } else { pesPayloadReader = streamReaderFactory.createStreamReader(streamType, esInfo); - pesPayloadReader.init(output, new TrackIdGenerator(trackId, MAX_PID_PLUS_ONE)); + if (pesPayloadReader != null) { + pesPayloadReader.init(output, new TrackIdGenerator(trackId, MAX_PID_PLUS_ONE)); + } } if (pesPayloadReader != null) {