From 591082fa014fa371ba246f22d31baf3d014baaad Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Wed, 11 Jan 2012 16:05:53 -0500 Subject: [PATCH] Act on outbound ground metamessages before checking for inertness. --- os.rkt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/os.rkt b/os.rkt index c126441..98ef54c 100644 --- a/os.rkt +++ b/os.rkt @@ -292,16 +292,16 @@ ;; Runs its argument VM until it becomes (provably) inert. (define (ground-vm pattern-predicate boot) (let loop ((transition (run-vm (make-vm pattern-predicate boot)))) + (for-each (lambda (thunk) (thunk)) (kernel-mode-transition-messages transition)) (when (not (nested-vm-inert? (kernel-mode-transition-subscription transition))) (match transition [(kernel-mode-transition (subscription new-state polling-k message-handlers '()) - outbound-messages + _ '() '()) - (for-each (lambda (thunk) (thunk)) outbound-messages) (define inbound-messages (map (match-lambda [(message-handler e k) (wrap-evt e (lambda (v) (cons v k)))]) message-handlers))