Fix remainingPlaybackAnimationMs crash (#7836)

This happens when trying to round `Float.NaN` to `Int`
This commit is contained in:
Jorge Martin Espinosa
2026-10-02 11:09:46 +02:00
committed by GitHub
parent 558c4541cd
commit a12977b4dc
@@ -152,8 +152,10 @@ internal fun remainingPlaybackAnimationMs(
durationMs: Long,
playbackSpeed: Float,
): Int {
val remainingProgress = (1f - progress).coerceAtLeast(0f)
return (remainingProgress * durationMs / playbackSpeed.coerceAtLeast(0.01f))
if (!progress.isFinite() || !playbackSpeed.isFinite() || durationMs <= 0L) return 0
val remainingProgress = (1f - progress).coerceIn(0f, 1f)
val speed = playbackSpeed.coerceAtLeast(0.01f)
return (remainingProgress * durationMs / speed)
.roundToInt()
.coerceAtLeast(0)
}