Use escape-pod to ensure assertion of error survives the impending exit of the failing actor

This commit is contained in:
Tony Garnock-Jones 2021-06-15 14:51:50 +02:00
parent 30f395157a
commit 5479511afa
1 changed files with 4 additions and 1 deletions

View File

@ -35,5 +35,8 @@
format-string
. args)
(define message (apply format format-string args))
(spawn (at ds (assert (protocol-error reason-code message local-info originated-at-peer?))))
(escape-pod
(lambda ()
(spawn #:name (list 'protocol-error reason-code message)
(at ds (assert (protocol-error reason-code message local-info originated-at-peer?))))))
(error 'protocol-error "(~a) ~a: ~v" reason-code message local-info))