summaryrefslogtreecommitdiff
path: root/fibers.scm
diff options
context:
space:
mode:
Diffstat (limited to 'fibers.scm')
-rw-r--r--fibers.scm9
1 files changed, 5 insertions, 4 deletions
diff --git a/fibers.scm b/fibers.scm
index a0d6bab..ee02f67 100644
--- a/fibers.scm
+++ b/fibers.scm
@@ -61,10 +61,11 @@
hz
(let ((last-runcount 0))
(lambda ()
- (let ((runcount (scheduler-runcount scheduler)))
- (when (eqv? runcount last-runcount)
- (yield-current-fiber))
- (set! last-runcount runcount))))
+ (let* ((runcount (scheduler-runcount scheduler))
+ (res (eqv? runcount last-runcount)))
+ (set! last-runcount runcount)
+ res)))
+ yield-current-fiber
(lambda ()
(run-scheduler scheduler finished?)))))))