summaryrefslogtreecommitdiff
path: root/lib/conncache.c
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2017-04-20 15:10:04 +0200
committerDaniel Stenberg <daniel@haxx.se>2017-04-20 17:26:49 +0200
commita4494df7059796a5066858b7ba3be542e1f8b308 (patch)
tree5ce9ce842c49419d3372d6b84400e6c8f2154b11 /lib/conncache.c
parentda2af5c04dee9d0e16c02b468494f386ac69e837 (diff)
downloadcurl-bagder/llist-less-malloc.tar.gz
llist: no longer uses mallocbagder/llist-less-malloc
The 'list element' struct now has to be a struct within the data that struct itself that is being held in the list. Removes 16.6% (tiny) mallocs from a simple HTTP transfer. (96 => 80) Also removed return codes since the llist functions can't fail now. Test 1300 updated accordingly.
Diffstat (limited to 'lib/conncache.c')
-rw-r--r--lib/conncache.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/lib/conncache.c b/lib/conncache.c
index 0590ec631..c79d22764 100644
--- a/lib/conncache.c
+++ b/lib/conncache.c
@@ -72,13 +72,11 @@ static void bundle_destroy(struct connectbundle *cb_ptr)
/* Add a connection to a bundle */
static CURLcode bundle_add_conn(struct connectbundle *cb_ptr,
- struct connectdata *conn)
+ struct connectdata *conn)
{
- if(!Curl_llist_insert_next(&cb_ptr->conn_list, cb_ptr->conn_list.tail, conn))
- return CURLE_OUT_OF_MEMORY;
-
+ Curl_llist_insert_next(&cb_ptr->conn_list, cb_ptr->conn_list.tail, conn,
+ &conn->bundle_node);
conn->bundle = cb_ptr;
-
cb_ptr->num_connections++;
return CURLE_OK;
}