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, durationMs: Long,
playbackSpeed: Float, playbackSpeed: Float,
): Int { ): Int {
val remainingProgress = (1f - progress).coerceAtLeast(0f) if (!progress.isFinite() || !playbackSpeed.isFinite() || durationMs <= 0L) return 0
return (remainingProgress * durationMs / playbackSpeed.coerceAtLeast(0.01f)) val remainingProgress = (1f - progress).coerceIn(0f, 1f)
val speed = playbackSpeed.coerceAtLeast(0.01f)
return (remainingProgress * durationMs / speed)
.roundToInt() .roundToInt()
.coerceAtLeast(0) .coerceAtLeast(0)
} }