X-Git-Url: http://git.cielonegro.org/gitweb.cgi?p=EsounD.git;a=blobdiff_plain;f=Sound%2FEsounD%2FPlayer.hs;h=4d3c719cdf9fe09cd527da7a32e370bc68d1bb45;hp=56781da08f2753efc24178d2bcac28f9c0379af2;hb=fe6d908;hpb=a2e2bda599616a8e7ef0b429aaf047921f0d5950 diff --git a/Sound/EsounD/Player.hs b/Sound/EsounD/Player.hs index 56781da..4d3c719 100644 --- a/Sound/EsounD/Player.hs +++ b/Sound/EsounD/Player.hs @@ -13,9 +13,9 @@ module Sound.EsounD.Player ) where import Bindings.EsounD -import Control.Exception.Peel +import Control.Exception.Control import Control.Monad.IO.Class -import Control.Monad.IO.Peel +import Control.Monad.IO.Control import Control.Monad.Trans.Region import Control.Monad.Trans.Region.OnExit import Control.Monad.Unicode @@ -65,7 +65,7 @@ instance Frame fr ⇒ WritableStream (Player fr Stereo) (L.Vector fr, L.Vector f openPlayer ∷ ∀fr ch s pr. ( Frame fr , Channels ch - , MonadPeelIO pr + , MonadControlIO pr ) ⇒ Int -- ^ sample rate for the stream. → Maybe HostName -- ^ host to connect to. @@ -73,7 +73,7 @@ openPlayer ∷ ∀fr ch s pr. -- ESD (if any). → RegionT s pr (Player fr ch (RegionT s pr)) openPlayer rate host name - = block $ + = mask_ $ do h ← liftIO openSocket ch ← onExit $ sanitizeIOError $ closeSocket h return Player {