% ------------------------------------------------------------------------------
-% $Id: PrelException.lhs,v 1.23 2000/07/09 16:00:55 panne Exp $
+% $Id: PrelException.lhs,v 1.24 2000/09/14 14:24:02 simonmar Exp $
%
% (c) The University of Glasgow, 1998-2000
%
\begin{code}
#ifndef __HUGS__
-blockAsyncExceptions :: IO a -> IO a
-blockAsyncExceptions (IO io) = IO $ blockAsyncExceptions# io
+block :: IO a -> IO a
+block (IO io) = IO $ blockAsyncExceptions# io
-unblockAsyncExceptions :: IO a -> IO a
-unblockAsyncExceptions (IO io) = IO $ unblockAsyncExceptions# io
+unblock :: IO a -> IO a
+unblock (IO io) = IO $ unblockAsyncExceptions# io
#else
-- Not implemented yet in Hugs.
-blockAsyncExceptions :: IO a -> IO a
-blockAsyncExceptions (IO io) = IO io
+block :: IO a -> IO a
+block (IO io) = IO io
-unblockAsyncExceptions :: IO a -> IO a
-unblockAsyncExceptions (IO io) = IO io
+unblock :: IO a -> IO a
+unblock (IO io) = IO io
#endif
\end{code}
% ------------------------------------------------------------------------------
-% $Id: PrelHandle.lhs,v 1.61 2000/08/29 16:37:35 simonpj Exp $
+% $Id: PrelHandle.lhs,v 1.62 2000/09/14 14:24:02 simonmar Exp $
%
% (c) The AQUA Project, Glasgow University, 1994-2000
%
withHandle :: Handle -> (Handle__ -> IO (Handle__,a)) -> IO a
{-# INLINE withHandle #-}
withHandle (Handle h) act =
- blockAsyncExceptions $ do
+ block $ do
h_ <- takeMVar h
(h',v) <- catchException (act h_) (\ ex -> putMVar h h_ >> throw ex)
putMVar h h'
withHandle_ :: Handle -> (Handle__ -> IO a) -> IO a
{-# INLINE withHandle_ #-}
withHandle_ (Handle h) act =
- blockAsyncExceptions $ do
+ block $ do
h_ <- takeMVar h
v <- catchException (act h_) (\ ex -> putMVar h h_ >> throw ex)
putMVar h h_
withHandle__ :: Handle -> (Handle__ -> IO Handle__) -> IO ()
{-# INLINE withHandle__ #-}
withHandle__ (Handle h) act =
- blockAsyncExceptions $ do
+ block $ do
h_ <- takeMVar h
h' <- catchException (act h_) (\ ex -> putMVar h h_ >> throw ex)
putMVar h h'