use m_strdup and m_strlen that are inlined for efficiency
[apps/madmutt.git] / commands.c
index 4271849..52fe118 100644 (file)
 # include "config.h"
 #endif
 
+#include <lib-lib/mem.h>
+
+#include <lib-lib/macros.h>
+
 #include "mutt.h"
 #include "enter.h"
 #include "recvattach.h"
@@ -38,9 +42,6 @@
 #include "buffy.h"
 #endif
 
-#include "lib/mem.h"
-#include "lib/intl.h"
-#include "lib/str.h"
 #include "lib/debug.h"
 
 #include <errno.h>
@@ -155,8 +156,16 @@ int mutt_display_message (HEADER * cur)
       mutt_wait_filter (filterpid);
       safe_fclose (&fpfilterout);
     }
+#if 0
+    /* this is maybe just plain wrong but it makes the pager display
+     * what we have; i.e. for the crypto stuff we only get
+     * 'Could not copy message' for invalid passphrases, no PGP output
+     * not nothing; so just display what we have...
+     * - pdmef
+     */
     mutt_unlink (tempfile);
     return 0;
+#endif
   }
 
   if (fpfilterout != NULL && mutt_wait_filter (filterpid) != 0)
@@ -265,7 +274,7 @@ void ci_bounce_message (HEADER * h, int *redraw)
 
   if (mutt_addrlist_to_idna (adr, &err) < 0) {
     mutt_error (_("Bad IDN: '%s'"), err);
-    mem_free (&err);
+    p_delete(&err);
     rfc822_free_address (&adr);
     return;
   }
@@ -342,8 +351,8 @@ static void pipe_msg (HEADER * h, FILE * fp, int decode, int print)
 
 /* the following code is shared between printing and piping */
 
-static int _mutt_pipe_message (HEADER * h, char *cmd,
-                               int decode, int print, int split, char *sep)
+static int _mutt_pipe_message(HEADER * h, char *cmd, int decode, int print,
+                              int split, const char *sep)
 {
 
   int i, rc = 0;
@@ -573,7 +582,7 @@ void mutt_enter_command (void)
   err.dsize = sizeof (errbuf);
   memset (&token, 0, sizeof (token));
   r = mutt_parse_rc_line (buffer, &token, &err);
-  mem_free (&token.data);
+  p_delete(&token.data);
   if (errbuf[0]) {
     /* since errbuf could potentially contain printf() sequences in it,
        we must call mutt_error() in this fashion so that vsprintf()
@@ -587,11 +596,11 @@ void mutt_enter_command (void)
 
 void mutt_display_address (ENVELOPE * env)
 {
-  char *pfx = NULL;
+  const char *pfx = NULL;
   char buf[SHORT_STRING];
   ADDRESS *adr = NULL;
 
-  adr = mutt_get_address (env, &pfx);
+  adr = mutt_get_address(env, &pfx);
 
   if (!adr)
     return;
@@ -850,7 +859,7 @@ void mutt_edit_content_type (HEADER * h, BODY * b, FILE * fp)
     size_t l;
 
     for (p = b->parameter; p; p = p->next) {
-      l = str_len (buf);
+      l = m_strlen(buf);
 
       rfc822_cat (tmp, sizeof (tmp), p->value, MimeSpecials);
       snprintf (buf + l, sizeof (buf) - l, "; %s=%s", p->attribute, tmp);
@@ -863,7 +872,7 @@ void mutt_edit_content_type (HEADER * h, BODY * b, FILE * fp)
 
   /* clean up previous junk */
   mutt_free_parameter (&b->parameter);
-  mem_free (&b->subtype);
+  p_delete(&b->subtype);
 
   mutt_parse_content_type (buf, b);