fix segfault
[apps/madmutt.git] / buffy.c
diff --git a/buffy.c b/buffy.c
index b00170b..7688aa4 100644 (file)
--- a/buffy.c
+++ b/buffy.c
@@ -14,6 +14,8 @@
 # include "config.h"
 #endif
 
+#include <lib-lib/mem.h>
+
 #include "mutt.h"
 #include "buffy.h"
 #include "buffer.h"
@@ -170,8 +172,8 @@ void buffy_update_mailbox (BUFFY * b)
 
 /* func to free buffy for list_del() */
 static void buffy_free (BUFFY** p) {
-  mem_free(&(*p)->path);
-  mem_free(p);
+  p_delete(&(*p)->path);
+  p_delete(p);
 }
 
 int buffy_lookup (const char* path) {
@@ -220,7 +222,7 @@ int buffy_parse_mailboxes (BUFFER * path, BUFFER * s, unsigned long data,
     }
 
     if (i < 0) {
-      tmp = mem_calloc (1, sizeof (BUFFY));
+      tmp = p_new(BUFFY, 1);
       tmp->path = str_dup (buf);
       tmp->magic = 0;
       list_push_back (&Incoming, tmp);