diff --git a/src/Quasar/ResourceManager.hs b/src/Quasar/ResourceManager.hs index c9f31aa814a549bea9bff967e8e923204f8f1d7c..694399bbda6e83931a6272ec2e8aa2c5b7ac0b14 100644 --- a/src/Quasar/ResourceManager.hs +++ b/src/Quasar/ResourceManager.hs @@ -197,7 +197,7 @@ withLinkedExceptionHandler parentExceptionHandler action = do mask \unmask -> do bracket - do liftIO $ forkIOWithUnmask $ cancelThread mainThreadId + do liftIO $ forkIOWithUnmask \unmask -> cancelThread mainThreadId unmask do \cancelThreadId -> liftIO $ throwTo cancelThreadId CancelHelper do \_ -> unmask $ action exceptionHandler `catch`