use more ad-hoc list handling function, and avoid to muck with ->next
[apps/madmutt.git] / commands.c
index cc78d45..bc05999 100644 (file)
 # include "config.h"
 #endif
 
+#include <errno.h>
+#include <unistd.h>
+#include <stdlib.h>
+#include <string.h>
+#include <sys/wait.h>
+#include <sys/stat.h>
+#include <sys/types.h>
+#include <utime.h>
+
 #include <lib-lib/mem.h>
 #include <lib-lib/file.h>
 #include <lib-lib/macros.h>
 
 #include <lib-mime/mime.h>
 
+#include <lib-sys/exit.h>
+#include <lib-sys/unix.h>
+
 #include <lib-ui/curses.h>
 #include <lib-ui/enter.h>
+#include <lib-ui/menu.h>
 
 #include "mutt.h"
+#include "alias.h"
 #include "recvattach.h"
-#include "mutt_menu.h"
 #include "sort.h"
 #include "copy.h"
 #include "mx.h"
 #include "pager.h"
 #include <lib-crypt/crypt.h>
 #include "mutt_idna.h"
-#include "rfc1524.h"
 #include <sys/types.h>
 #include <sys/stat.h>
 #include <fcntl.h>
 #include "buffy.h"
 #endif
 
-#include "lib/debug.h"
-
-#include <errno.h>
-#include <unistd.h>
-#include <stdlib.h>
-#include <string.h>
-#include <sys/wait.h>
-#include <sys/stat.h>
-#include <sys/types.h>
-#include <utime.h>
-
 /* The folder the user last saved to.  Used by ci_save_message() */
 static char LastSaveFolder[_POSIX_PATH_MAX] = "";
 
@@ -141,7 +142,6 @@ int mutt_display_message (HEADER * cur)
                              (option (OPTWEED) ? (CH_WEED | CH_REORDER) : 0) |
                              CH_DECODE | CH_FROM);
     if (res == 0 && (ferror(fpout) || feof(fpout))) {
-      debug_print (1, ("_mutt_copy_message failed to detect EOF!\n"));
       res = -1;
     }
 
@@ -240,7 +240,7 @@ void ci_bounce_message (HEADER * h, int *redraw)
   char prompt[SHORT_STRING];
   char buf[HUGE_STRING] = { 0 };
   address_t *adr = NULL;
-  char *err = NULL;
+  const char *err = NULL;
   int rc;
 
   if (h)
@@ -269,7 +269,7 @@ void ci_bounce_message (HEADER * h, int *redraw)
   if (mutt_addrlist_to_idna (adr, &err) < 0) {
     mutt_error (_("Bad IDN: '%s'"), err);
     p_delete(&err);
-    address_delete (&adr);
+    address_list_wipe(&adr);
     return;
   }
 
@@ -290,7 +290,7 @@ void ci_bounce_message (HEADER * h, int *redraw)
   }
 
   if (query_quadoption (OPT_BOUNCE, prompt) != M_YES) {
-    address_delete (&adr);
+    address_list_wipe(&adr);
     CLEARLINE (LINES - 1);
     mutt_message (h ? _("Message not bounced.") : _("Messages not bounced."));
     return;
@@ -299,7 +299,7 @@ void ci_bounce_message (HEADER * h, int *redraw)
   CLEARLINE (LINES - 1);
 
   rc = mutt_bounce_message (NULL, h, adr);
-  address_delete (&adr);
+  address_list_wipe(&adr);
   /* If no error, or background, display message. */
   if ((rc == 0) || (rc == S_BKG))
     mutt_message (h ? _("Message bounced.") : _("Messages bounced."));
@@ -826,7 +826,6 @@ void mutt_edit_content_type (HEADER * h, BODY * b, FILE * fp)
   char buf[LONG_STRING];
   char obuf[LONG_STRING];
   char tmp[STRING];
-  PARAMETER *p;
 
   char charset[STRING];
   char *cp;
@@ -840,7 +839,8 @@ void mutt_edit_content_type (HEADER * h, BODY * b, FILE * fp)
   snprintf (buf, sizeof (buf), "%s/%s", TYPE (b), b->subtype);
   m_strcpy(obuf, sizeof(obuf), buf);
   if (b->parameter) {
-    size_t l;
+    PARAMETER *p;
+    ssize_t l;
 
     for (p = b->parameter; p; p = p->next) {
       l = m_strlen(buf);
@@ -855,7 +855,7 @@ void mutt_edit_content_type (HEADER * h, BODY * b, FILE * fp)
     return;
 
   /* clean up previous junk */
-  parameter_delete(&b->parameter);
+  parameter_list_wipe(&b->parameter);
   p_delete(&b->subtype);
 
   mutt_parse_content_type (buf, b);