diff --git a/collects/mred/mred.ss b/collects/mred/mred.ss index 2472a45f..c21ed04b 100644 --- a/collects/mred/mred.ss +++ b/collects/mred/mred.ss @@ -3822,10 +3822,8 @@ (public [swap-gl-buffers (lambda () (send wx swap-buffers))] [with-gl-context (lambda (thunk) - (dynamic-wind - (lambda () (send wx this-context-current)) - thunk - void))] + (parameterize ([wx:current-gl-context (mred->wx this)]) + (thunk)))] [accept-tab-focus (entry-point (case-lambda [() (send wx get-tab-focus)] diff --git a/collects/mred/private/kernel.ss b/collects/mred/private/kernel.ss index 2c8a0d3a..968db7a1 100644 --- a/collects/mred/private/kernel.ss +++ b/collects/mred/private/kernel.ss @@ -331,7 +331,6 @@ on-size on-set-focus on-kill-focus - previous-context-current this-context-current swap-buffers on-scroll @@ -1397,7 +1396,8 @@ set-menu-tester location->window set-dialogs - set-executer) + set-executer + current-gl-context) ) ;; end