wibble.
[apps/madmutt.git] / edit.c
diff --git a/edit.c b/edit.c
index f5f93ac..f6cfcf6 100644 (file)
--- a/edit.c
+++ b/edit.c
 #endif
 
 #include <lib-lib/mem.h>
+#include <lib-lib/ascii.h>
+#include <lib-lib/str.h>
 #include <lib-lib/macros.h>
+#include <lib-lib/file.h>
 
 #include "mutt.h"
-#include "ascii.h"
 #include "enter.h"
 #include "mutt_curses.h"
 #include "mutt_idna.h"
 
-#include "lib/str.h"
 
 #include <stdio.h>
 #include <string.h>
@@ -65,8 +66,8 @@ static char **be_snarf_data (FILE * f, char **buf, int *bufmax, int *buflen,
 
   tmp[sizeof (tmp) - 1] = 0;
   if (prefix) {
-    strfcpy (tmp, NONULL (Prefix), sizeof (tmp));
-    tmplen = str_len (tmp);
+    m_strcpy(tmp, sizeof(tmp), NONULL(Prefix));
+    tmplen = m_strlen(tmp);
     p = tmp + tmplen;
     tmplen = sizeof (tmp) - tmplen;
   }
@@ -75,10 +76,10 @@ static char **be_snarf_data (FILE * f, char **buf, int *bufmax, int *buflen,
   while (bytes > 0) {
     if (fgets (p, tmplen - 1, f) == NULL)
       break;
-    bytes -= str_len (p);
+    bytes -= m_strlen(p);
     if (*bufmax == *buflen)
       p_realloc(&buf, *bufmax += 25);
-    buf[(*buflen)++] = str_dup (tmp);
+    buf[(*buflen)++] = m_strdup(tmp);
   }
   if (buf && *bufmax == *buflen) {      /* Do not smash memory past buf */
     p_realloc(&buf, ++*bufmax);
@@ -158,7 +159,7 @@ static char **be_include_messages (char *msg, char **buf, int *bufmax,
 
       if (*bufmax == *buflen)
         p_realloc(&buf, *bufmax += 25);
-      buf[(*buflen)++] = str_dup (tmp);
+      buf[(*buflen)++] = m_strdup(tmp);
 
       bytes = Context->hdrs[n]->content->length;
       if (inc_hdrs) {
@@ -172,7 +173,7 @@ static char **be_include_messages (char *msg, char **buf, int *bufmax,
 
       if (*bufmax == *buflen)
         p_realloc(&buf, *bufmax += 25);
-      buf[(*buflen)++] = str_dup ("\n");
+      buf[(*buflen)++] = m_strdup("\n");
     }
     else
       printw (_("%d: invalid message number.\n"), n);
@@ -229,7 +230,7 @@ static void be_edit_header (ENVELOPE * e, int force)
   rfc822_write_address (tmp, sizeof (tmp), e->to, 0);
   if (!e->to || force) {
     if (mutt_enter_string (tmp, sizeof (tmp), LINES - 1, 4, 0) == 0) {
-      rfc822_free_address (&e->to);
+      address_delete (&e->to);
       e->to = mutt_parse_adrlist (e->to, tmp);
       e->to = mutt_expand_aliases (e->to);
       mutt_addrlist_to_idna (e->to, NULL);      /* XXX - IDNA error reporting? */
@@ -246,7 +247,7 @@ static void be_edit_header (ENVELOPE * e, int force)
 
   if (!e->subject || force) {
     addstr ("Subject: ");
-    strfcpy (tmp, e->subject ? e->subject : "", sizeof (tmp));
+    m_strcpy(tmp, sizeof(tmp), NONULL(e->subject));
     if (mutt_enter_string (tmp, sizeof (tmp), LINES - 1, 9, 0) == 0)
       str_replace (&e->subject, tmp);
     addch ('\n');
@@ -258,7 +259,7 @@ static void be_edit_header (ENVELOPE * e, int force)
     mutt_addrlist_to_local (e->cc);
     rfc822_write_address (tmp, sizeof (tmp), e->cc, 0);
     if (mutt_enter_string (tmp, sizeof (tmp), LINES - 1, 4, 0) == 0) {
-      rfc822_free_address (&e->cc);
+      address_delete (&e->cc);
       e->cc = mutt_parse_adrlist (e->cc, tmp);
       e->cc = mutt_expand_aliases (e->cc);
       tmp[0] = 0;
@@ -277,7 +278,7 @@ static void be_edit_header (ENVELOPE * e, int force)
     mutt_addrlist_to_local (e->bcc);
     rfc822_write_address (tmp, sizeof (tmp), e->bcc, 0);
     if (mutt_enter_string (tmp, sizeof (tmp), LINES - 1, 5, 0) == 0) {
-      rfc822_free_address (&e->bcc);
+      address_delete (&e->bcc);
       e->bcc = mutt_parse_adrlist (e->bcc, tmp);
       e->bcc = mutt_expand_aliases (e->bcc);
       mutt_addrlist_to_idna (e->bcc, NULL);
@@ -319,12 +320,11 @@ int mutt_builtin_editor (const char *path, HEADER * msg, HEADER * cur)
 
     if (EscChar && tmp[0] == EscChar[0] && tmp[1] != EscChar[0]) {
       /* remove trailing whitespace from the line */
-      p = tmp + str_len (tmp) - 1;
+      p = tmp + m_strlen(tmp) - 1;
       while (p >= tmp && ISSPACE (*p))
         *p-- = 0;
 
-      p = tmp + 2;
-      SKIPWS (p);
+      p = vskipspaces(tmp + 2);
 
       switch (tmp[1]) {
       case '?':
@@ -348,9 +348,9 @@ int mutt_builtin_editor (const char *path, HEADER * msg, HEADER * cur)
         if (Context) {
           if (!*p && cur) {
             /* include the current message */
-            p = tmp + str_len (tmp) + 1;
-            snprintf (tmp + str_len (tmp),
-                      sizeof (tmp) - str_len (tmp), " %d",
+            p = tmp + m_strlen(tmp) + 1;
+            snprintf (tmp + m_strlen(tmp),
+                      sizeof (tmp) - m_strlen(tmp), " %d",
                       cur->msgno + 1);
           }
           buf = be_include_messages (p, buf, &bufmax, &buflen,
@@ -374,7 +374,7 @@ int mutt_builtin_editor (const char *path, HEADER * msg, HEADER * cur)
         break;
       case 'r':
         if (*p) {
-          strncpy (tmp, p, sizeof (tmp));
+          m_strcpy(tmp, sizeof(tmp), p);
           mutt_expand_path (tmp, sizeof (tmp));
           buf = be_snarf_file (tmp, buf, &bufmax, &buflen, 1);
         }
@@ -391,8 +391,8 @@ int mutt_builtin_editor (const char *path, HEADER * msg, HEADER * cur)
       case 'u':
         if (buflen) {
           buflen--;
-          strfcpy (tmp, buf[buflen], sizeof (tmp));
-          tmp[str_len (tmp) - 1] = 0;
+          m_strcpy(tmp, sizeof(tmp), buf[buflen]);
+          tmp[m_strlen(tmp) - 1] = 0;
           p_delete(&buf[buflen]);
           buf[buflen] = NULL;
           continue;
@@ -436,13 +436,13 @@ int mutt_builtin_editor (const char *path, HEADER * msg, HEADER * cur)
         break;
       }
     }
-    else if (str_cmp (".", tmp) == 0)
+    else if (m_strcmp(".", tmp) == 0)
       done = 1;
     else {
-      str_cat (tmp, sizeof (tmp), "\n");
+      m_strcat(tmp, sizeof(tmp), "\n");
       if (buflen == bufmax)
         p_realloc(&buf, bufmax += 25);
-      buf[buflen++] = str_dup (tmp[1] == '~' ? tmp + 1 : tmp);
+      buf[buflen++] = m_strdup(tmp[1] == '~' ? tmp + 1 : tmp);
     }
 
     tmp[0] = 0;