mirror of
https://github.com/commercialhaskell/stackage.git
synced 2026-01-12 23:38:29 +01:00
20 lines
660 B
Diff
20 lines
660 B
Diff
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
|