Skip to content

Commit cde9bc3

Browse files
authored
Merge pull request libre-tube#7045 from Bnyro/master
fix: crash when seeking backwards to negative time
2 parents d34d34e + a7c5c0a commit cde9bc3

2 files changed

Lines changed: 4 additions & 2 deletions

File tree

app/src/main/java/com/github/libretube/services/AbstractPlayerService.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -327,7 +327,7 @@ abstract class AbstractPlayerService : MediaLibraryService(), MediaLibrarySessio
327327
}
328328

329329
private fun saveWatchPosition() {
330-
if (isTransitioning || !watchPositionsEnabled) return
330+
if (isTransitioning || !watchPositionsEnabled || !::videoId.isInitialized) return
331331

332332
exoPlayer?.let { PlayerHelper.saveWatchPosition(it, videoId) }
333333
}

app/src/main/java/com/github/libretube/ui/fragments/AudioPlayerFragment.kt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ import androidx.activity.BackEventCompat
1212
import androidx.activity.OnBackPressedCallback
1313
import androidx.constraintlayout.motion.widget.MotionLayout
1414
import androidx.constraintlayout.motion.widget.TransitionAdapter
15+
import androidx.core.math.MathUtils.clamp
1516
import androidx.core.os.bundleOf
1617
import androidx.core.view.isGone
1718
import androidx.core.view.isVisible
@@ -397,8 +398,9 @@ class AudioPlayerFragment : Fragment(R.layout.fragment_audio_player), AudioPlaye
397398

398399
// update the time bar current value and maximum value
399400
binding.timeBar.valueTo = (duration / 1000).toFloat()
400-
binding.timeBar.value = minOf(
401+
binding.timeBar.value = clamp(
401402
currentPosition / 1000,
403+
binding.timeBar.valueFrom,
402404
binding.timeBar.valueTo
403405
)
404406

0 commit comments

Comments
 (0)