Commit 15c4d51d authored by Carlo Wood's avatar Carlo Wood Committed by Daniel Stenberg
Browse files

Curl_single_getsock: fix hold/pause sock handling

The previous condition that checked if the socket was marked as readable
when also adding a writable one, was incorrect and didn't take the pause
bits properly into account.
parent 5565d0ab
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -1214,10 +1214,10 @@ int Curl_single_getsock(const struct connectdata *conn,
  if((data->req.keepon & KEEP_SENDBITS) == KEEP_SEND) {

    if((conn->sockfd != conn->writesockfd) ||
       !(data->req.keepon & KEEP_RECV)) {
      /* only if they are not the same socket or we didn't have a readable
       bitmap == GETSOCK_BLANK) {
      /* only if they are not the same socket and we have a readable
         one, we increase index */
      if(data->req.keepon & KEEP_RECV)
      if(bitmap != GETSOCK_BLANK)
        sockindex++; /* increase index if we need two entries */

      DEBUGASSERT(conn->writesockfd != CURL_SOCKET_BAD);