A process may have exited before it gets checked in step-children.

This commit is contained in:
Tony Garnock-Jones 2014-05-13 23:14:00 -04:00
parent db132b8230
commit baf0ba9206
1 changed files with 2 additions and 2 deletions

View File

@ -264,8 +264,8 @@
#f ;; world is inert.
(transition (for/fold ([w (struct-copy world w [runnable-pids (set)])])
[(pid (in-set runnable-pids))]
(define p (hash-ref (world-process-table w) pid))
(apply-transition pid (deliver-event #f pid p) w))
(define p (hash-ref (world-process-table w) pid (lambda () #f)))
(if (not p) w (apply-transition pid (deliver-event #f pid p) w)))
'()))) ;; world needs another check to see if more can happen.
(define (world-handle-event e w)