From a50aa9d164c642e6d371382fefb90545ef3518a7 Mon Sep 17 00:00:00 2001 From: Matthew Flatt Date: Fri, 19 Mar 2021 07:03:45 -0600 Subject: [PATCH] cs: repair for callbacks that might throw exceptions The callable used to trigger stack unwinding was unlocked during initialization, but it shouldn't be. --- racket/src/cs/rumble/foreign.ss | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/racket/src/cs/rumble/foreign.ss b/racket/src/cs/rumble/foreign.ss index b17d3747a8..1a2f208067 100644 --- a/racket/src/cs/rumble/foreign.ss +++ b/racket/src/cs/rumble/foreign.ss @@ -2010,9 +2010,7 @@ [else (let ([fptr (make-ftype-pointer ptr->ptr call)]) (let ([v (ftype-ref ptr->ptr () fptr)]) - (unlock-object - (foreign-callable-code-object - (ftype-pointer-address fptr))) + ;; must leave the callable code object locked v))]))) ;; ----------------------------------------