From: Tom Christie Date: Sat, 25 May 2019 19:25:44 +0000 (+0100) Subject: Handle StreamReset, and acknowledge received data (#81) X-Git-Tag: 0.3.1~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9d19adba30ddd50b05296678d70aa181efa78389;p=thirdparty%2Fhttpx.git Handle StreamReset, and acknowledge received data (#81) --- diff --git a/httpcore/dispatch/http2.py b/httpcore/dispatch/http2.py index bb1857f3..402f3b65 100644 --- a/httpcore/dispatch/http2.py +++ b/httpcore/dispatch/http2.py @@ -31,6 +31,7 @@ class HTTP2Connection: #  Start sending the request. if not self.initialized: self.initiate_connection() + stream_id = await self.send_headers(request, timeout) self.events[stream_id] = [] @@ -117,8 +118,9 @@ class HTTP2Connection: while True: event = await self.receive_event(stream_id, timeout) if isinstance(event, h2.events.DataReceived): + self.h2_state.acknowledge_received_data(len(event.data), stream_id) yield event.data - elif isinstance(event, h2.events.StreamEnded): + elif isinstance(event, (h2.events.StreamEnded, h2.events.StreamReset)): break async def receive_event(