drop mem_alloc and mem_free, use my own hand crafted optmized macros that
[apps/madmutt.git] / list.c
diff --git a/list.c b/list.c
index eee8a4f..b40e97b 100644 (file)
--- a/list.c
+++ b/list.c
@@ -13,6 +13,8 @@
 #include <stdlib.h>
 #include <string.h>
 
+#include <lib-lib/mem.h>
+
 #include "list.h"
 #include "lib/mem.h"
 #include "lib/str.h"
@@ -21,7 +23,7 @@ LIST *mutt_copy_list (LIST * p) {
   LIST *t, *r = NULL, *l = NULL;
 
   for (; p; p = p->next) {
-    t = (LIST *) mem_malloc (sizeof (LIST));
+    t = p_new(LIST, 1);
     t->data = str_dup (p->data);
     t->next = NULL;
     if (l) {
@@ -46,12 +48,12 @@ LIST *mutt_add_list_n (LIST *head, const void *data, size_t len) {
   for (tmp = head; tmp && tmp->next; tmp = tmp->next);
 
   if (tmp) {
-    tmp->next = mem_malloc (sizeof (LIST));
+    tmp->next = p_new(LIST, 1);
     tmp = tmp->next;
   } else
-    head = tmp = mem_malloc (sizeof (LIST));
+    head = tmp = p_new(LIST, 1);
 
-  tmp->data = mem_malloc (len);
+  tmp->data = p_new(char, len);
   if (len)
     memcpy (tmp->data, data, len);
   tmp->next = NULL;
@@ -66,7 +68,7 @@ void mutt_free_list (LIST ** list) {
   while (*list) {
     p = *list;
     *list = (*list)->next;
-    mem_free (&p->data);
-    mem_free (&p);
+    p_delete(&p->data);
+    p_delete(&p);
   }
 }