]> gitweb @ CieloNegro.org - EsounD.git/blobdiff - Sound/EsounD/Recorder.hs
esound-1: Replace use of MonadPeelIO with MonadControlIO
[EsounD.git] / Sound / EsounD / Recorder.hs
index 7a843c3b9a67ec445878d62b95de4d2fa48ccff6..caeaaa0b579c9e3ea272a565df531737c04fd909 100644 (file)
@@ -13,9 +13,9 @@ module Sound.EsounD.Recorder
     )
     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
@@ -63,7 +63,7 @@ instance Frame fr ⇒ ReadableStream (Recorder fr Stereo) (L.Vector fr, L.Vector
 openRecorder ∷ ∀fr ch s pr.
                 ( Frame fr
                 , Channels ch
-                , MonadPeelIO pr
+                , MonadControlIO pr
                 )
              ⇒ Int            -- ^ sample rate for the stream.
              → Maybe HostName -- ^ host to connect to.
@@ -71,7 +71,7 @@ openRecorder ∷ ∀fr ch s pr.
                                --   to ESD (if any).
              → RegionT s pr (Recorder fr ch (RegionT s pr))
 openRecorder rate host name
-    = block $
+    = mask_ $
       do h  ← liftIO openSocket
          ch ← onExit $ sanitizeIOError $ closeSocket h
          return Recorder {
@@ -83,7 +83,7 @@ openRecorder rate host name
       fmt ∷ C'esd_format_t
       fmt = frameFmt   ((⊥) ∷ fr) .|.
             channelFmt ((⊥) ∷ ch) .|.
-            c'ESD_STREAM            .|.
+            c'ESD_STREAM          .|.
             c'ESD_RECORD
 
       openSocket ∷ IO Handle