Commit 701509d3 authored by Daniel Stenberg's avatar Daniel Stenberg
Browse files

Jeff Lawson fixed a few problems with connection re-use that remained when

you set CURLOPT_PROXY to "".
parent c3cc6162
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -420,7 +420,7 @@ CURLcode Curl_http_connect(struct connectdata *conn)
   * has occured, can we start talking SSL
   */

  if(data->change.proxy && (data->set.proxytype == CURLPROXY_HTTP) &&
  if(conn->bits.httpproxy &&
     ((conn->protocol & PROT_HTTPS) || data->set.tunnel_thru_httpproxy)) {

    /* either HTTPS over proxy, OR explicitly asked for a tunnel */
@@ -551,7 +551,7 @@ CURLcode Curl_http(struct connectdata *conn)
                             host, ppath,
                             (conn->protocol&PROT_HTTPS?TRUE:FALSE));
  }
  if (data->change.proxy &&
  if (data->change.proxy && *data->change.proxy &&
      !data->set.tunnel_thru_httpproxy &&
      !(conn->protocol&PROT_HTTPS))  {
    /* The path sent to the proxy is in fact the entire URL */
+4 −2
Original line number Diff line number Diff line
@@ -1729,7 +1729,9 @@ static CURLcode CreateConnection(struct SessionHandle *data,
  conn->firstsocket = -1;     /* no file descriptor */
  conn->secondarysocket = -1; /* no file descriptor */
  conn->connectindex = -1;    /* no index */
  conn->bits.httpproxy = data->change.proxy?TRUE:FALSE; /* proxy-or-not */
  conn->bits.httpproxy = (data->change.proxy && *data->change.proxy &&
                          (data->set.proxytype == CURLPROXY_HTTP))?
    TRUE:FALSE; /* http proxy or not */
  conn->bits.use_range = data->set.set_range?TRUE:FALSE; /* range status */
  conn->range = data->set.set_range;              /* clone the range setting */
  conn->resume_from = data->set.set_resume_from;   /* inherite resume_from */