Fix fast-logger 2.0.1 for GHC 7.4

This commit is contained in:
Michael Snoyman 2013-12-24 08:14:45 +02:00
parent 7d2ca47672
commit 377a7f9970

View File

@ -0,0 +1,19 @@
diff -ru orig/System/Log/FastLogger/Logger.hs new/System/Log/FastLogger/Logger.hs
--- orig/System/Log/FastLogger/Logger.hs 2013-12-24 08:14:25.325658733 +0200
+++ new/System/Log/FastLogger/Logger.hs 2013-12-24 08:14:24.000000000 +0200
@@ -19,6 +19,15 @@
data Logger = Logger (MVar Buffer) !BufSize (IORef LogStr)
+#if !MIN_VERSION_base(4, 6, 0)
+atomicModifyIORef' :: IORef a -> (a -> (a,b)) -> IO b
+atomicModifyIORef' ref f = do
+ b <- atomicModifyIORef ref
+ (\x -> let (a, b) = f x
+ in (a, a `seq` b))
+ b `seq` return b
+#endif
+
newLogger :: BufSize -> IO Logger
newLogger size = do
buf <- getBuffer size