X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=edit.c;h=f6cfcf6d0863eadd0a4a0d55f70c485390ea6a22;hp=2f1a377882785a7b165d8f7a0bc0f51a8bb6fb81;hb=85832555b8d510499b13bc454e458382d36e195d;hpb=8e037c67a88cb4680c4391134c578e3b55a80f8a diff --git a/edit.c b/edit.c index 2f1a377..f6cfcf6 100644 --- a/edit.c +++ b/edit.c @@ -14,16 +14,16 @@ #endif #include +#include +#include +#include +#include #include "mutt.h" -#include "ascii.h" #include "enter.h" #include "mutt_curses.h" #include "mutt_idna.h" -#include "lib/mem.h" -#include "lib/intl.h" -#include "lib/str.h" #include #include @@ -66,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; } @@ -76,13 +76,13 @@ 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) - mem_realloc (&buf, sizeof (char *) * (*bufmax += 25)); - buf[(*buflen)++] = str_dup (tmp); + p_realloc(&buf, *bufmax += 25); + buf[(*buflen)++] = m_strdup(tmp); } if (buf && *bufmax == *buflen) { /* Do not smash memory past buf */ - mem_realloc (&buf, sizeof (char *) * (++*bufmax)); + p_realloc(&buf, ++*bufmax); } if (buf) buf[*buflen] = NULL; @@ -158,8 +158,8 @@ static char **be_include_messages (char *msg, char **buf, int *bufmax, } if (*bufmax == *buflen) - mem_realloc (&buf, sizeof (char *) * (*bufmax += 25)); - buf[(*buflen)++] = str_dup (tmp); + p_realloc(&buf, *bufmax += 25); + buf[(*buflen)++] = m_strdup(tmp); bytes = Context->hdrs[n]->content->length; if (inc_hdrs) { @@ -172,8 +172,8 @@ static char **be_include_messages (char *msg, char **buf, int *bufmax, pfx); if (*bufmax == *buflen) - mem_realloc (&buf, sizeof (char *) * (*bufmax += 25)); - buf[(*buflen)++] = str_dup ("\n"); + p_realloc(&buf, *bufmax += 25); + buf[(*buflen)++] = m_strdup("\n"); } else printw (_("%d: invalid message number.\n"), n); @@ -230,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? */ @@ -247,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'); @@ -259,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; @@ -278,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); @@ -320,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 '?': @@ -349,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, @@ -375,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); } @@ -392,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; @@ -437,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) - mem_realloc (&buf, sizeof (char *) * (bufmax += 25)); - buf[buflen++] = str_dup (tmp[1] == '~' ? tmp + 1 : tmp); + p_realloc(&buf, bufmax += 25); + buf[buflen++] = m_strdup(tmp[1] == '~' ? tmp + 1 : tmp); } tmp[0] = 0;