Ignore invalid RTP-Info header value.

Issue: google/ExoPlayer#9619

(and a few other GH issues related to invalid RTP-Info header)

PiperOrigin-RevId: 423283017
This commit is contained in:
claincly 2022-01-21 11:34:17 +00:00 committed by Ian Baker
parent 914cf423bd
commit 1fe8e07068

View File

@ -619,11 +619,18 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
startTimingString == null startTimingString == null
? RtspSessionTiming.DEFAULT ? RtspSessionTiming.DEFAULT
: RtspSessionTiming.parseTiming(startTimingString); : RtspSessionTiming.parseTiming(startTimingString);
@Nullable String rtpInfoString = response.headers.get(RtspHeaders.RTP_INFO);
ImmutableList<RtspTrackTiming> trackTimingList = ImmutableList<RtspTrackTiming> trackTimingList;
rtpInfoString == null try {
? ImmutableList.of() @Nullable String rtpInfoString = response.headers.get(RtspHeaders.RTP_INFO);
: RtspTrackTiming.parseTrackTiming(rtpInfoString, uri); trackTimingList =
rtpInfoString == null
? ImmutableList.of()
: RtspTrackTiming.parseTrackTiming(rtpInfoString, uri);
} catch (ParserException e) {
trackTimingList = ImmutableList.of();
}
onPlayResponseReceived(new RtspPlayResponse(response.status, timing, trackTimingList)); onPlayResponseReceived(new RtspPlayResponse(response.status, timing, trackTimingList));
break; break;