X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=lib-ui%2Fhdrline.c;h=92e6fa628254cb96a8c0c900b56563f248668430;hp=09e77da8e6a27fb81d3b8ae63393760fad6f16c3;hb=b23d5033080fe9f9fba038e3cf1e3ec2b0a0d33d;hpb=688ac22f746f785c27ac99ac86aa85a3035a3638 diff --git a/lib-ui/hdrline.c b/lib-ui/hdrline.c index 09e77da..92e6fa6 100644 --- a/lib-ui/hdrline.c +++ b/lib-ui/hdrline.c @@ -210,16 +210,13 @@ struct hdr_format_info { HEADER *hdr; }; -static const char *hdr_format_str (char *dest, - ssize_t destlen, - char op, - const char *src, - const char *prefix, - const char *ifstring, - const char *elsestring, - unsigned long data, format_flag flags) +static const char * +hdr_format_str(char *dest, ssize_t destlen, + char op, const char *src, const char *prefix, + 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[STRING], buf2[STRING], ch, *p; @@ -702,18 +699,15 @@ 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); - else if (flags & M_FORMAT_OPTIONAL) - mutt_FormatString (dest, destlen, elsestring, hdr_format_str, - (unsigned long) hfi, flags); + if (flags & M_FORMAT_OPTIONAL) + m_strformat(dest, destlen, 0, optional ? ifstr: elstr, + hdr_format_str, data, flags); - return (src); + return src; #undef THREAD_NEW #undef THREAD_OLD } @@ -727,6 +721,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, COLS - SW, s, hdr_format_str, &hfi, flags); }