| Index: net/http/http_network_transaction.cc
|
| ===================================================================
|
| --- net/http/http_network_transaction.cc (revision 112998)
|
| +++ net/http/http_network_transaction.cc (working copy)
|
| @@ -1187,6 +1187,14 @@
|
| case ERR_CONNECTION_RESET:
|
| case ERR_CONNECTION_CLOSED:
|
| case ERR_CONNECTION_ABORTED:
|
| + // There can be a race between the socket pool checking checking whether a
|
| + // socket is still connected, receiving the FIN, and sending/reading data
|
| + // on a reused socket. If we receive the FIN between the connectedness
|
| + // check and writing/reading from the socket, we may first learn the socket
|
| + // is disconnected when we get a ERR_SOCKET_NOT_CONNECTED. This will most
|
| + // likely happen when trying to retrieve its IP address.
|
| + // See http://crbug.com/105824 for more details.
|
| + case ERR_SOCKET_NOT_CONNECTED:
|
| if (ShouldResendRequest(error)) {
|
| net_log_.AddEvent(
|
| NetLog::TYPE_HTTP_TRANSACTION_RESTART_AFTER_ERROR,
|
|
|