commit 35bae395154f59f9b05e043ade2d04d731860fd3
parent 4d752710de6058169ab22feaddf1e2829759b104
Author: Ryan Culpepper <ryanc@racket-lang.org>
Date: Fri, 29 Oct 2010 16:54:26 -0600
macro-stepper: added thread/eventspace check
Closes PR 11364 (actually, earlier commit closed)
original commit: a3367fd0b4bfade1f322b1af6e32c12a66747c6e
Diffstat:
1 file changed, 5 insertions(+), 0 deletions(-)
diff --git a/collects/macro-debugger/view/view.rkt b/collects/macro-debugger/view/view.rkt
@@ -38,7 +38,12 @@
(send/i (send/i stepper-frame stepper-frame<%> get-widget) widget<%>
add-deriv deriv))))
+ ;; PRE: current thread = current eventspace's handler thread
(define/public (new-stepper [flags '()])
+ (unless (eq? (current-thread)
+ (eventspace-handler-thread (current-eventspace)))
+ (error 'macro-stepper-director
+ "new-stepper method called from wrong thread"))
(define stepper-frame (new-stepper-frame))
(define stepper (send/i stepper-frame stepper-frame<%> get-widget))
(send stepper-frame show #t)