warp 3.2.19 → 3.2.20
raw patch · 4 files changed
+11/−5 lines, 4 files
Files
- ChangeLog.md +5/−1
- Network/Wai/Handler/Warp/HTTP2/Request.hs +1/−1
- Network/Wai/Handler/Warp/HTTP2/Worker.hs +4/−2
- warp.cabal +1/−1
ChangeLog.md view
@@ -1,5 +1,9 @@+## 3.2.20+* Fixing "Thread killed by timeout reaper when sending large HTTP/2 response"+ [#593](https://github.com/yesodweb/wai/issues/593)+ ## 3.2.19-* Fixing fixing 0-length body in HTTP/2+* Fixing 0-length body in HTTP/2 [#597](https://github.com/yesodweb/wai/issues/597) [#679](https://github.com/yesodweb/wai/issues/679)
Network/Wai/Handler/Warp/HTTP2/Request.hs view
@@ -80,7 +80,7 @@ !rawPath = if S.settingsNoParsePath settings then unparsedPath else path !h = hashByteString rawPath !ii = toInternalInfo ii1 h- !th = threadHandle ii+ !th = threadHandle ii -- th must be overwritten with worker's one. !vaultValue = Vault.insert pauseTimeoutKey (Timeout.pause th) $ Vault.insert getFileInfoKey (getFileInfo ii) $ Vault.insert getHTTP2DataKey (readIORef ref)
Network/Wai/Handler/Warp/HTTP2/Worker.hs view
@@ -219,8 +219,9 @@ !out = Output strm rspn ii tell h2data rspnOrWait enqueueOutput outputQ out let push b = do+ T.pause th atomically $ writeTBQueue tbq (SBuilder b)- T.tickle th+ T.resume th flush = atomically $ writeTBQueue tbq SFlush _ <- strmbdy push flush atomically $ writeTBQueue tbq SFinish@@ -242,7 +243,8 @@ setStreamInfo sinfo inp T.resume th T.tickle th- app req $ responder ii reqvt tcont strm req+ let ii' = ii { threadHandle = th }+ app req $ responder ii' reqvt tcont strm req cont1 <- case ex of Right ResponseReceived -> return True Left e@(SomeException _)
warp.cabal view
@@ -1,5 +1,5 @@ Name: warp-Version: 3.2.19+Version: 3.2.20 Synopsis: A fast, light-weight web server for WAI applications. License: MIT License-file: LICENSE