on master help sign in
Stopping sending Data frame without end of stream whose size is 0. (#459)
commita1c5e660265b228f9b4f93972f46425992e278a1 authorKazu Yamamoto <kazu@iij.ad.jp> dateThu 19 Nov 2015, 14:51 (11 years ago) parent7e0829d
1 file changed+4−2
warp/Network/Wai/Handler/Warp/HTTP2/Sender.hs+4−2
warp/Network/Wai/Handler/Warp/HTTP2/Sender.hs+4−2
@@ -310,8 +310,10 @@ runStreamBuilder ii buf0 room0 sq = loop buf0 room0 0
310310 Just (SFile path part) -> do
311311 (leftover, len) <- runStreamFile ii buf room path part
312312 let !total' = total + len
313− return (leftover, Nothing, total')
314− -- TODO if file part is done, go back to loop
313+ case leftover of
314+ LZero -> loop (buf `plusPtr` len) (room - len) total'
315+ _ -> return (leftover, Nothing, total')
316+
315317 Just SFlush -> return (LZero, Nothing, total)
316318 Just (SFinish trailers) -> return (LZero, Just trailers, total)
317319