diff --git a/src/adlist.c b/src/adlist.c index f432fd79e21..77b0438113d 100644 --- a/src/adlist.c +++ b/src/adlist.c @@ -169,7 +169,7 @@ list *listAddNodeHeadDRAM(list *list, void *value) * On error, NULL is returned and no operation is performed (i.e. the * list remains unaltered). * On success the 'list' pointer you pass to the function is returned. */ -list *listAddNodeTail(list *list, void *value) +list *_listAddNodeTail(list *list, void *value, int on_dram) { listNode *node; @@ -189,6 +189,14 @@ list *listAddNodeTail(list *list, void *value) return list; } +list *listAddNodeTail(list *list, void *value) { + return _listAddNodeTail(list, value, LIST_GENERAL_VARIANT); +} + +list *listAddNodeTailDRAM(list *list, void *value) { + return _listAddNodeTail(list, value, LIST_DRAM_VARIANT); +} + list *listInsertNode(list *list, listNode *old_node, void *value, int after) { listNode *node; diff --git a/src/adlist.h b/src/adlist.h index 0f7b124d237..9ba48b72627 100644 --- a/src/adlist.h +++ b/src/adlist.h @@ -79,6 +79,7 @@ void listEmptyDRAM(list *list); list *listAddNodeHead(list *list, void *value); list *listAddNodeHeadDRAM(list *list, void *value); list *listAddNodeTail(list *list, void *value); +list *listAddNodeTailDRAM(list *list, void *value); list *listInsertNode(list *list, listNode *old_node, void *value, int after); void listDelNode(list *list, listNode *node); void listDelNodeDRAM(list *list, listNode *node); diff --git a/src/networking.c b/src/networking.c index 41c98cb4a4e..54567eafc88 100644 --- a/src/networking.c +++ b/src/networking.c @@ -75,7 +75,7 @@ int listMatchObjects(void *a, void *b) { /* This function links the client to the global linked list of clients. * unlinkClient() does the opposite, among other things. */ void linkClient(client *c) { - listAddNodeTail(server.clients,c); + listAddNodeTailDRAM(server.clients,c); /* Note that we remember the linked list node where the client is stored, * this way removing the client in unlinkClient() will not require * a linear scan, but just a constant time operation. */