on master help sign in
hlint suggestions.
5eefe02Kazu Yamamoto
warp/Network/Wai/Handler/Warp/Conduit.hs+3−3
@@ -152,9 +152,9 @@ readCSource (CSource src ref) = do
152 (x, y)
152 (x, y)
153 | S.null y -> do
153 | S.null y -> do
154 bs2 <- readSource' src
154 bs2 <- readSource' src
155− if S.null bs2
155+ return $ if S.null bs2
156− then return (x, y)
156+ then (x, y)
157− else return $ S.breakByte 10 $ bs `S.append` bs2
157+ else S.breakByte 10 $ bs `S.append` bs2
158 | otherwise -> return (x, y)
158 | otherwise -> return (x, y)
159 let w =
159 let w =
160 S.foldl' (\i c -> i * 16 + fromIntegral (hexToWord c)) 0
160 S.foldl' (\i c -> i * 16 + fromIntegral (hexToWord c)) 0
warp/Network/Wai/Handler/Warp/FdCache.hs+1−1
@@ -1,4 +1,4 @@
1−{-# LANGUAGE BangPatterns, FlexibleInstances, CPP #-}
1+{-# LANGUAGE BangPatterns, CPP #-}
2
2
3-- | File descriptor cache to avoid locks in kernel.
3-- | File descriptor cache to avoid locks in kernel.
4
4
warp/Network/Wai/Handler/Warp/RequestHeader.hs+3−3
@@ -103,10 +103,10 @@ parseRequestLine requestLine@(PS fptr off len) = withForeignPtr fptr $ \ptr -> d
103 httpVersion httpptr = do
103 httpVersion httpptr = do
104 major <- peek $ httpptr `plusPtr` 5
104 major <- peek $ httpptr `plusPtr` 5
105 minor <- peek $ httpptr `plusPtr` 7
105 minor <- peek $ httpptr `plusPtr` 7
106− if major == (49 :: Word8) && minor == (49 :: Word8) then
106+ return $ if major == (49 :: Word8) && minor == (49 :: Word8) then
107− return H.http11
107+ H.http11
108 else
108 else
109− return H.http10
109+ H.http10
110 bs ptr p0 p1 = PS fptr o l
110 bs ptr p0 p1 = PS fptr o l
111 where
111 where
112 o = p0 `minusPtr` ptr
112 o = p0 `minusPtr` ptr
warp/Network/Wai/Handler/Warp/Run.hs+5−4
@@ -6,21 +6,22 @@
6
6
7module Network.Wai.Handler.Warp.Run where
7module Network.Wai.Handler.Warp.Run where
8
8
9+import Control.Arrow (first)
9import Control.Concurrent (threadDelay, forkIOWithUnmask)
10import Control.Concurrent (threadDelay, forkIOWithUnmask)
10import qualified Control.Concurrent as Conc (yield)
11import qualified Control.Concurrent as Conc (yield)
11import Control.Exception as E
12import Control.Exception as E
12import Control.Monad (forever, when, unless, void)
13import Control.Monad (forever, when, unless, void)
13import Data.ByteString (ByteString)
14import Data.ByteString (ByteString)
14import qualified Data.ByteString as S
15import qualified Data.ByteString as S
16+import Data.IORef (IORef, newIORef, readIORef, writeIORef)
15import Data.Streaming.Network (bindPortTCP)
17import Data.Streaming.Network (bindPortTCP)
16import Network (sClose, Socket)
18import Network (sClose, Socket)
17import Network.Socket (accept, withSocketsDo, SockAddr)
19import Network.Socket (accept, withSocketsDo, SockAddr)
18import qualified Network.Socket.ByteString as Sock
20import qualified Network.Socket.ByteString as Sock
19import Network.Wai
21import Network.Wai
20−import Network.Wai.Internal (ResponseReceived (ResponseReceived))
22+import Network.Wai.Handler.Warp.Buffer
21import qualified Network.Wai.Handler.Warp.Date as D
23import qualified Network.Wai.Handler.Warp.Date as D
22import qualified Network.Wai.Handler.Warp.FdCache as F
24import qualified Network.Wai.Handler.Warp.FdCache as F
23−import Network.Wai.Handler.Warp.Buffer
24import Network.Wai.Handler.Warp.Header
25import Network.Wai.Handler.Warp.Header
25import Network.Wai.Handler.Warp.Recv
26import Network.Wai.Handler.Warp.Recv
26import Network.Wai.Handler.Warp.Request
27import Network.Wai.Handler.Warp.Request
@@ -29,7 +30,7 @@ import Network.Wai.Handler.Warp.SendFile
29import Network.Wai.Handler.Warp.Settings
30import Network.Wai.Handler.Warp.Settings
30import qualified Network.Wai.Handler.Warp.Timeout as T
31import qualified Network.Wai.Handler.Warp.Timeout as T
31import Network.Wai.Handler.Warp.Types
32import Network.Wai.Handler.Warp.Types
32−import Data.IORef (IORef, newIORef, readIORef, writeIORef)
33+import Network.Wai.Internal (ResponseReceived (ResponseReceived))
33
34
34#if WINDOWS
35#if WINDOWS
35import Network.Wai.Handler.Warp.Windows
36import Network.Wai.Handler.Warp.Windows
@@ -112,7 +113,7 @@ runSettingsConnectionMaker :: Settings -> IO (IO Connection, SockAddr) -> Applic
112runSettingsConnectionMaker x y =
113runSettingsConnectionMaker x y =
113 runSettingsConnectionMakerSecure x (go y)
114 runSettingsConnectionMakerSecure x (go y)
114 where
115 where
115− go = fmap (\(a, b) -> (fmap (, False) a, b))
116+ go = fmap (first (fmap (, False)))
116
117
117-- | Allows you to provide a function which will return a function
118-- | Allows you to provide a function which will return a function
118-- which will return 'Connection'.
119-- which will return 'Connection'.
warp/Network/Wai/Handler/Warp/Timeout.hs+2−3
@@ -1,7 +1,6 @@
1{-# LANGUAGE CPP #-}
1{-# LANGUAGE CPP #-}
2−{-# LANGUAGE BangPatterns #-}
3{-# LANGUAGE DeriveDataTypeable #-}
2{-# LANGUAGE DeriveDataTypeable #-}
4−{-# LANGUAGE UnboxedTuples, MagicHash #-}
3+{-# LANGUAGE MagicHash #-}
5
4
6-- |
5-- |
7--
6--
@@ -133,7 +132,7 @@ registerKillThread m = do
133-- deRefWeak checks if ThreadId referenced by the weak reference
132-- deRefWeak checks if ThreadId referenced by the weak reference
134-- exists. If exists, it means that the thread is alive.
133-- exists. If exists, it means that the thread is alive.
135killIfExist :: Weak ThreadId -> TimeoutAction
134killIfExist :: Weak ThreadId -> TimeoutAction
136−killIfExist wtid = deRefWeak wtid >>= maybe (return ()) (flip E.throwTo TimeoutThread)
135+killIfExist wtid = deRefWeak wtid >>= maybe (return ()) (`E.throwTo` TimeoutThread)
137
136
138data TimeoutThread = TimeoutThread
137data TimeoutThread = TimeoutThread
139 deriving Typeable
138 deriving Typeable