#include "mutt.h"
#include "mutt_curses.h"
#include "sort.h"
+#include "thread.h"
#include "charset.h"
#include "mutt_crypt.h"
#include "mutt_idna.h"
+#include "mime.h"
#include "lib/str.h"
#include "lib/rx.h"
* %u = user (login) name of author
* %v = first name of author, unless from self
* %W = where user is (organization)
+ * %X = number of MIME attachments
* %y = `x-label:' field (if present)
* %Y = `x-label:' field (if present, tree unfolded, and != parent's x-label)
* %Z = status flags */
optional = 0;
break;
+ case 'X':
+ {
+ 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;
+
+ snprintf (fmt, sizeof (fmt), "%%%sd", prefix);
+ snprintf (dest, destlen, fmt, count);
+ }
+ break;
+
case 'Z':
ch = ' ';