@@ -221,10 +221,7 @@ frameSender ctx@Context{outputQ,connectionWindow}
221 let sid = streamNumber strm
221 let sid = streamNumber strm
222 buf = connWriteBuffer `plusPtr` otherLen
222 buf = connWriteBuffer `plusPtr` otherLen
223 total = otherLen + frameHeaderLength + datPayloadLen
223 total = otherLen + frameHeaderLength + datPayloadLen
224− flag = case mnext of
225− CFinish -> setEndStream defaultFlags
227− fillFrameHeader FrameData datPayloadLen sid flag buf
224+ fillFrameHeader FrameData datPayloadLen sid defaultFlags buf
228 -- "closed" must be before "connSendAll". If not,
225 -- "closed" must be before "connSendAll". If not,
229 -- the context would be switched to the receiver,
226 -- the context would be switched to the receiver,
230 -- resulting the inconsistency of concurrency.
227 -- resulting the inconsistency of concurrency.
@@ -356,7 +353,7 @@ runStreamBuilder buf0 room0 sq = loop buf0 room0 0
356 B.More _ writer -> return (LOne writer, Nothing, total')
353 B.More _ writer -> return (LOne writer, Nothing, total')
357 B.Chunk bs writer -> return (LTwo bs writer, Nothing, total')
354 B.Chunk bs writer -> return (LTwo bs writer, Nothing, total')
358 Just SFlush -> return (LZero, Nothing, total)
355 Just SFlush -> return (LZero, Nothing, total)
359− Just SFinish -> return (LZero, Just [], total)
356+ Just (SFinish trailers) -> return (LZero, Just trailers, total)
361fillBufStream :: Buffer -> BufSize -> Leftover -> TBQueue Sequence -> TVar Sync -> Stream -> DynaNext
358fillBufStream :: Buffer -> BufSize -> Leftover -> TBQueue Sequence -> TVar Sync -> Stream -> DynaNext
362fillBufStream buf0 siz0 leftover0 sq tvar strm lim0 = do
359fillBufStream buf0 siz0 leftover0 sq tvar strm lim0 = do