Index: net/http/http_response_body_drainer.cc |
diff --git a/net/http/http_response_body_drainer.cc b/net/http/http_response_body_drainer.cc |
index fdcec3115d3fc515723f977c54bf68cfd9b4f8f8..6b04f6eca376da6a9486169d85b7135bdafa3c73 100644 |
--- a/net/http/http_response_body_drainer.cc |
+++ b/net/http/http_response_body_drainer.cc |
@@ -113,7 +113,7 @@ void HttpResponseBodyDrainer::Finish(int result) { |
if (session_) |
session_->RemoveResponseDrainer(this); |
- if (result < 0) { |
+ if (result < 0 || !stream_->CanReuseConnection()) { |
stream_->Close(true /* no keep-alive */); |
} else { |
DCHECK_EQ(OK, result); |