From 0252b1582c79122e3ca1725f0a7d00734b9223ad Mon Sep 17 00:00:00 2001 From: fgl27 Date: Sat, 28 Mar 2020 02:50:52 -0300 Subject: [PATCH] Prevent wrong value from getTotalBufferedDurationUs prevent negative value for rendererPositionUs, in random cases for a split second the value of rendererPositionUs is negative after a seekto or starting a playback with a ResumePosition >>> 0 for example, what results on a wrong and too big value be returned Signed-off-by: fgl27 --- .../com/google/android/exoplayer2/ExoPlayerImplInternal.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/library/core/src/main/java/com/google/android/exoplayer2/ExoPlayerImplInternal.java b/library/core/src/main/java/com/google/android/exoplayer2/ExoPlayerImplInternal.java index 53c8a5d0807..d29b826dbcb 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/ExoPlayerImplInternal.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/ExoPlayerImplInternal.java @@ -2104,7 +2104,7 @@ private long getTotalBufferedDurationUs() { private long getTotalBufferedDurationUs(long bufferedPositionInLoadingPeriodUs) { MediaPeriodHolder loadingPeriodHolder = queue.getLoadingPeriod(); - if (loadingPeriodHolder == null) { + if (loadingPeriodHolder == null || rendererPositionUs < 0) { return 0; } long totalBufferedDurationUs =