* %s = size
* %u = unlink
*/
-const char *mutt_attach_fmt (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)
+const char *
+mutt_attach_fmt(char *dest, ssize_t destlen, char op, const char *src,
+ const char *prefix, const char *ifstr, const char *elstr,
+ anytype data, format_flag flags)
{
char fmt[16];
- char tmp[SHORT_STRING];
- char charset[SHORT_STRING];
- ATTACHPTR *aptr = (ATTACHPTR *) data;
+ char tmp[STRING];
+ char charset[STRING];
+ ATTACHPTR *aptr = data.ptr;
int optional = (flags & M_FORMAT_OPTIONAL);
ssize_t l;
}
if (mutt_is_message_type(aptr->content) && MsgFmt && aptr->content->hdr)
{
- char s[SHORT_STRING];
+ char s[STRING];
_mutt_make_string (s, sizeof (s), MsgFmt, NULL, aptr->content->hdr,
M_FORMAT_FORCESUBJ | M_FORMAT_MAKEPRINT |
- M_FORMAT_ARROWCURSOR);
+ (option(OPTARROWCURSOR) ? M_FORMAT_ARROWCURSOR : 0));
if (*s) {
mutt_format_s (dest, destlen, prefix, s);
break;
*dest = 0;
}
- if (optional)
- mutt_FormatString (dest, destlen, ifstring, mutt_attach_fmt, data, 0);
- else if (flags & M_FORMAT_OPTIONAL)
- mutt_FormatString (dest, destlen, elsestring, mutt_attach_fmt, data, 0);
- return (src);
+ if (flags & M_FORMAT_OPTIONAL)
+ m_strformat(dest, destlen, 0, optional ? ifstr : elstr,
+ mutt_attach_fmt, data, 0);
+ return src;
}
-static void attach_entry (char *b, ssize_t blen, MUTTMENU * menu, int num)
+static void attach_entry(char *b, ssize_t blen, MUTTMENU * menu, int num)
{
- int w=(COLS-SW)>blen?blen:(COLS-SW);
- mutt_FormatString (b, w, NONULL (AttachFormat), mutt_attach_fmt,
- (unsigned long) (((ATTACHPTR **) menu->data)[num]),
- M_FORMAT_ARROWCURSOR);
+ m_strformat(b, blen, COLS - SW, AttachFormat, mutt_attach_fmt,
+ ((ATTACHPTR **) menu->data)[num],
+ option(OPTARROWCURSOR) ? M_FORMAT_ARROWCURSOR : 0);
}
int mutt_tag_attach (MUTTMENU * menu, int n, int m)
void mutt_pipe_attachment_list (FILE * fp, int tag, BODY * top, int afilter)
{
STATE state;
- char buf[SHORT_STRING];
+ char buf[STRING];
pid_t thepid;
if (fp)
int secured = 0;
int need_secured = 0;
- char helpstr[SHORT_STRING];
+ char helpstr[STRING];
MUTTMENU *menu;
BODY *cur = NULL;
MESSAGE *msg;