on master help sign in
Drop the final CRLF for chunked request bodies (#109)
commitf24d688b2d511f6680355b67b33a1f501b9b8bd2 authorMichael Snoyman <michael@snoyman.com> dateTue 25 Sep 2012, 07:01 (14 years ago) parentfcab266
1 file changed+4−1
warp/Network/Wai/Handler/Warp/Conduit.hs+4−1
warp/Network/Wai/Handler/Warp/Conduit.hs+4−1
@@ -93,7 +93,10 @@ chunkedSource ipair = do
9393
9494 go src NeedLen = go' src id
9595 go src NeedLenNewline = go' src (CB.take 2 >>)
96− go src (HaveLen 0) = liftIO $ I.writeIORef ipair (src, HaveLen 0)
96+ go src (HaveLen 0) = do
97+ -- Drop the final CRLF
98+ (src', ()) <- lift $ src $$++ CB.drop 2
99+ liftIO $ I.writeIORef ipair (src', HaveLen 0)
97100 go src (HaveLen len) = do
98101 (src', mbs) <- lift $ src $$++ CL.head
99102 case mbs of