X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=lib-ui%2Fhdrline.c;h=cb5a5f400c2a3ea7db71c944927ea4fdea5dc2ce;hp=2bc1bed04c995f5cf715f3c028fc2d25cbbcc9f9;hb=6896715a0d62173a620b2377dba8e6d2058c1ee2;hpb=3692b834c97c9933088d7082464fec5ae903920f diff --git a/lib-ui/hdrline.c b/lib-ui/hdrline.c index 2bc1bed..cb5a5f4 100644 --- a/lib-ui/hdrline.c +++ b/lib-ui/hdrline.c @@ -7,21 +7,11 @@ * please see the file GPL in the top level source directory. */ -#if HAVE_CONFIG_H -# include "config.h" -#endif - -#include -#include -#include -#include - -#include -#include +#include #include - #include +#include #include "mutt.h" #include "alias.h" @@ -225,14 +215,14 @@ static const char *hdr_format_str (char *dest, char op, const char *src, const char *prefix, - const char *ifstring, - const char *elsestring, - unsigned long data, format_flag flags) + const char *ifstr, + const char *elstr, + anytype data, format_flag flags) { - struct hdr_format_info *hfi = (struct hdr_format_info *) data; + struct hdr_format_info *hfi = data.ptr; HEADER *hdr, *htmp; CONTEXT *ctx; - char fmt[SHORT_STRING], buf2[SHORT_STRING], ch, *p; + char fmt[STRING], buf2[STRING], ch, *p; int do_locales, i; int optional = (flags & M_FORMAT_OPTIONAL); int threads = ((Sort & SORT_MASK) == SORT_THREADS); @@ -405,7 +395,7 @@ static const char *hdr_format_str (char *dest, case 'f': buf2[0] = 0; - rfc822_write_address (buf2, sizeof (buf2), hdr->env->from, 1); + rfc822_addrcat(buf2, sizeof (buf2), hdr->env->from, 1); mutt_format_s (dest, destlen, prefix, buf2); break; @@ -448,7 +438,7 @@ static const char *hdr_format_str (char *dest, int j = 0; for (i = 0; hdr->env->from && hdr->env->from->personal && - hdr->env->from->personal[i] && j < SHORT_STRING - 1; i++) { + hdr->env->from->personal[i] && j < STRING - 1; i++) { if (isalpha ((int) hdr->env->from->personal[i])) { if (!iflag) { buf2[j++] = hdr->env->from->personal[i]; @@ -638,12 +628,6 @@ static const char *hdr_format_str (char *dest, { int count = 0; - if (option (OPTCOUNTATTACH)) { - if (!hdr->content->parts) - mutt_parse_mime_message(ctx, hdr); - count = mutt_count_body_parts(hdr, 0); - } - /* The recursion allows messages without depth to return 0. */ if (optional) optional = count != 0; @@ -718,16 +702,14 @@ static const char *hdr_format_str (char *dest, break; default: - snprintf (dest, destlen, "%%%s%c", prefix, op); + *dest = 0; break; } if (optional) - mutt_FormatString (dest, destlen, ifstring, hdr_format_str, - (unsigned long) hfi, flags); + m_strformat(dest, destlen, ifstr, hdr_format_str, data, flags); else if (flags & M_FORMAT_OPTIONAL) - mutt_FormatString (dest, destlen, elsestring, hdr_format_str, - (unsigned long) hfi, flags); + m_strformat(dest, destlen, elstr, hdr_format_str, data, flags); return (src); #undef THREAD_NEW @@ -743,6 +725,5 @@ _mutt_make_string (char *dest, ssize_t destlen, const char *s, CONTEXT * ctx, hfi.hdr = hdr; hfi.ctx = ctx; - mutt_FormatString (dest, destlen, s, hdr_format_str, (unsigned long) &hfi, - flags); + m_strformat(dest, destlen, s, hdr_format_str, &hfi, flags); }