diff --git a/collects/mred/private/wx/cocoa/sound.rkt b/collects/mred/private/wx/cocoa/sound.rkt index adf34464..c6382e62 100644 --- a/collects/mred/private/wx/cocoa/sound.rkt +++ b/collects/mred/private/wx/cocoa/sound.rkt @@ -26,7 +26,11 @@ [sema (make-semaphore)]) (tellv s setDelegate: s) (set-ivar! s sema sema) - (tellv s retain) ; don't use `retain', because we dont' want auto-release + + ; use the `retain' method instead of the `retain' function, because we + ; don't want a finalization-triggered release: + (tellv s retain) + (and (tell #:type _BOOL s play) (if async? #t