diff options
Diffstat (limited to 'mu.arc')
-rw-r--r-- | mu.arc | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/mu.arc b/mu.arc index dcbf5338..ac998383 100644 --- a/mu.arc +++ b/mu.arc @@ -250,6 +250,9 @@ (> curr-cycle* rep.routine!sleep.1) until-location-changes (~is rep.routine!sleep.2 (memory* rep.routine!sleep.1)) + until-routine-done + (find [and _ (is rep._!id rep.routine!sleep.1)] + completed-routines*) )) (on-init @@ -587,6 +590,8 @@ (= rep.routine*!sleep `(until ,wakeup-time))) until-location-changes (= rep.routine*!sleep `(until-location-changes ,(addr arg.1) ,(m arg.1))) + until-routine-done + (= rep.routine*!sleep `(until-routine-done ,(m arg.1))) ; else (die "badly formed 'sleep' call @(tostring:prn (body.routine* pc.routine*))") ) |