Chromium Code Reviews| Index: net/socket/ssl_client_socket_nss.cc |
| diff --git a/net/socket/ssl_client_socket_nss.cc b/net/socket/ssl_client_socket_nss.cc |
| index e827f398db65eb56a946e5c1ed286f455ccccb12..c1b79a466dfbbd2dcb2191353be39753bce786a2 100644 |
| --- a/net/socket/ssl_client_socket_nss.cc |
| +++ b/net/socket/ssl_client_socket_nss.cc |
| @@ -1296,6 +1296,10 @@ int SSLClientSocketNSS::DoReadLoop(int result) { |
| network_moved = DoTransportIO(); |
| } while (rv == ERR_IO_PENDING && network_moved); |
| + do { |
| + network_moved = DoTransportIO(); |
| + } while (network_moved); |
| + |
| LeaveFunction(""); |
| return rv; |
| } |
| @@ -1323,6 +1327,10 @@ int SSLClientSocketNSS::DoWriteLoop(int result) { |
| network_moved = DoTransportIO(); |
| } while (rv == ERR_IO_PENDING && network_moved); |
| + do { |
| + network_moved = DoTransportIO(); |
| + } while (network_moved); |
| + |
| LeaveFunction(""); |
| return rv; |
| } |
| @@ -1742,7 +1750,7 @@ bool SSLClientSocketNSS::DoTransportIO() { |
| if (nss_bufs_ != NULL) { |
| int nsent = BufferSend(); |
| int nreceived = BufferRecv(); |
| - network_moved = (nsent > 0 || nreceived >= 0); |
| + network_moved = (nsent > 0 || nreceived > 0); |
|
Sergey Ulanov
2011/07/18 17:58:36
I'm not sure why why we were returning true for nr
|
| } |
| LeaveFunction(network_moved); |
| return network_moved; |