Index: net/http/http_network_transaction.cc |
diff --git a/net/http/http_network_transaction.cc b/net/http/http_network_transaction.cc |
index f0595baa0d753d032582fb8aee8858ca788463d4..15b6e43a1f5740ec88698c63dcb7094787cb086d 100644 |
--- a/net/http/http_network_transaction.cc |
+++ b/net/http/http_network_transaction.cc |
@@ -1208,6 +1208,14 @@ int HttpNetworkTransaction::HandleIOError(int error) { |
} |
break; |
case ERR_PIPELINE_EVICTION: |
+ if (!(request_->load_flags & LOAD_FORCE_HTTP_PIPELINING)) { |
+ net_log_.AddEvent( |
+ NetLog::TYPE_HTTP_TRANSACTION_RESTART_AFTER_ERROR, |
+ make_scoped_refptr(new NetLogIntegerParameter("net_error", error))); |
+ ResetConnectionAndRequestForResend(); |
+ error = OK; |
+ } |
+ break; |
case ERR_SPDY_PING_FAILED: |
case ERR_SPDY_SERVER_REFUSED_STREAM: |
net_log_.AddEvent( |