From e4dd00e1e180cdd027f5876370f957779327dd25 Mon Sep 17 00:00:00 2001 From: klzgrad Date: Wed, 24 Jan 2018 23:58:24 -0500 Subject: [PATCH] h2: Notify delegate about read EOF So the delegate can close the socket instead of keeping sending data. Read EOF or h2 half-closed (remote) state was introduced in https://codereview.chromium.org/129543002. But StreamSocket doesnt really supports a half closed state, so upon a read EOF the only sane action is to close the socket immediately even if in theory more send is possible. --- net/spdy/spdy_stream.cc | 1 + 1 file changed, 1 insertion(+) diff --git a/net/spdy/spdy_stream.cc b/net/spdy/spdy_stream.cc index 38531dea1e..a25760938c 100644 --- a/net/spdy/spdy_stream.cc +++ b/net/spdy/spdy_stream.cc @@ -542,6 +542,7 @@ void SpdyStream::OnDataReceived(std::unique_ptr buffer) { if (!buffer) { if (io_state_ == STATE_OPEN) { io_state_ = STATE_HALF_CLOSED_REMOTE; + delegate_->OnDataReceived(nullptr); } else if (io_state_ == STATE_HALF_CLOSED_LOCAL) { io_state_ = STATE_CLOSED; // Deletes |this|.