Commit bc7d806e authored by Daniel Stenberg's avatar Daniel Stenberg
Browse files

multi: remove dns cache creation code from *add_handle

As it is done unconditionally in multi_init() this code will never run!
parent 6cf8413e
Loading
Loading
Loading
Loading
+0 −17
Original line number Diff line number Diff line
@@ -345,7 +345,6 @@ CURLMcode curl_multi_add_handle(CURLM *multi_handle,
  struct Curl_multi *multi = (struct Curl_multi *)multi_handle;
  struct SessionHandle *data = (struct SessionHandle *)easy_handle;
  struct SessionHandle *new_closure = NULL;
  struct curl_hash *hostcache = NULL;

  /* First, make some basic checks that the CURLM handle is a good handle */
  if(!GOOD_MULTI_HANDLE(multi))
@@ -366,22 +365,11 @@ CURLMcode curl_multi_add_handle(CURLM *multi_handle,
  if(!timeoutlist)
    return CURLM_OUT_OF_MEMORY;

  /* In case multi handle has no hostcache yet, allocate one */
  if(!multi->hostcache) {
    hostcache = Curl_mk_dnscache();
    if(!hostcache) {
      free(data);
      Curl_llist_destroy(timeoutlist, NULL);
      return CURLM_OUT_OF_MEMORY;
    }
  }

  /* In case multi handle has no closure_handle yet, allocate
     a new easy handle to use when closing cached connections */
  if(!multi->closure_handle) {
    new_closure = (struct SessionHandle *)curl_easy_init();
    if(!new_closure) {
      Curl_hash_destroy(hostcache);
      free(data);
      Curl_llist_destroy(timeoutlist, NULL);
      return CURLM_OUT_OF_MEMORY;
@@ -403,11 +391,6 @@ CURLMcode curl_multi_add_handle(CURLM *multi_handle,
    multi->closure_handle->state.conn_cache = multi->conn_cache;
  }

  /* In case hostcache has been allocated above,
     it is associated now with the multi handle. */
  if(hostcache)
    multi->hostcache = hostcache;

  /* Make easy handle use timeout list initialized above */
  data->state.timeoutlist = timeoutlist;
  timeoutlist = NULL;