diff options
| -rw-r--r-- | lib/url.c | 8 | 
1 files changed, 6 insertions, 2 deletions
@@ -4575,8 +4575,8 @@ CURLcode Curl_do(struct connectdata **connp, bool *done)        }      } -    if(result == CURLE_OK) -      /* pre readwrite must be called after the protocol-specific DO function */ +    if((result == CURLE_OK) && *done) +      /* do_complete must be called after the protocol-specific DO function */        do_complete(conn);    }    return result; @@ -4589,6 +4589,10 @@ CURLcode Curl_do_more(struct connectdata *conn)    if(conn->handler->do_more)      result = conn->handler->do_more(conn); +  if(result == CURLE_OK) +    /* do_complete must be called after the protocol-specific DO function */ +    do_complete(conn); +    return result;  }  | 
