From 34d48b4402ec09feacc70bf33a10e107cf830c7d Mon Sep 17 00:00:00 2001 From: Thomas White Date: Sun, 16 May 2021 11:24:37 +0200 Subject: Special case for zero duration clocks --- guile/starlet/clock.scm | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'guile/starlet/clock.scm') diff --git a/guile/starlet/clock.scm b/guile/starlet/clock.scm index bd00d50..46dd316 100644 --- a/guile/starlet/clock.scm +++ b/guile/starlet/clock.scm @@ -145,9 +145,13 @@ (define-method (elapsed-fraction (clock )) - (min 1.0 - (/ (time-elapsed clock) - (get-duration clock)))) + (if (= (get-duration clock) 0) + (if (> (time-elapsed clock) 0) + 1.0 + 0.0) + (min 1.0 + (/ (time-elapsed clock) + (get-duration clock))))) (define-method (stop-clock! (clock )) -- cgit v1.2.3