From 14888e3e077faffbd5a3284378d76ddb8cb94485 Mon Sep 17 00:00:00 2001 From: Robby Findler Date: Sun, 26 Aug 2007 12:29:49 +0000 Subject: [PATCH] made the error display handler be a little more robust for multi-threading situations svn: r7177 --- collects/drscheme/private/init.ss | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/collects/drscheme/private/init.ss b/collects/drscheme/private/init.ss index 9352c0bc95..17b644e069 100644 --- a/collects/drscheme/private/init.ss +++ b/collects/drscheme/private/init.ss @@ -21,6 +21,8 @@ (define system-namespace (current-namespace)) (define first-dir (current-directory)) + (define error-display-eventspace (make-eventspace)) + (define original-error-display-handler (error-display-handler)) (define error-display-handler-message-box-title @@ -44,10 +46,6 @@ (original-error-display-handler msg exn)) (get-output-string p))]) - (if (eq? (current-eventspace) system-eventspace) - (message-box title text #f '(stop ok)) - (parameterize ([current-eventspace system-eventspace] - [current-custodian system-custodian]) - (queue-callback - (λ () - (message-box title text #f '(stop ok))))))))))) + (parameterize ([current-custodian system-custodian]) + (parameterize ([current-eventspace error-display-eventspace]) + (message-box title text #f '(stop ok)))))))))