Commit 947e6563 authored by Daniel Stenberg's avatar Daniel Stenberg
Browse files

make sure that hash_add() has no allocated resources left in case it

returns NULL
parent 50e75451
Loading
Loading
Loading
Loading
+8 −7
Original line number Diff line number Diff line
@@ -156,14 +156,15 @@ Curl_hash_add(curl_hash *h, char *key, size_t key_len, void *p)
  }

  he = mk_hash_element(key, key_len, p);
  if (!he) 
    return NULL; /* failure */

  if (he) {
    if(Curl_llist_insert_next(l, l->tail, he)) {
      ++h->size;
      return p; /* return the new entry */
    }

    /* couldn't insert it, destroy the 'he' element again */
    hash_element_dtor(h, he);
  }
  h->dtor(p); /* remove the NEW entry */
  return NULL; /* failure */
}