break;
}
}
- if (!aptr->content->filename)
+ if (!aptr->content->d_filename && !aptr->content->filename)
{
mutt_format_s (dest, destlen, prefix, "<no description>");
break;
(mutt_is_message_type (aptr->content->type, aptr->content->subtype)
&& MsgFmt && aptr->content->hdr))
break;
+ /* FALLS THROUGH TO 'F' */
+ case 'F':
+ if (!optional)
+ {
+ if (aptr->content->d_filename)
+ {
+ mutt_format_s (dest, destlen, prefix, aptr->content->d_filename);
+ break;
+ }
+ }
+ else if (!aptr->content->d_filename && !aptr->content->filename)
+ {
+ optional = 0;
+ break;
+ }
/* FALLS THROUGH TO 'f' */
case 'f':
if(!optional)
else if(!aptr->content->filename)
optional = 0;
break;
- case 'F':
- if (!optional)
- {
- char fname[_POSIX_PATH_MAX];
- char *src = NULL;
-
- if (aptr->content->d_filename)
- src = aptr->content->d_filename;
- else if (aptr->content->filename)
- src = aptr->content->filename;
- else
- break;
-
- strfcpy (fname, mutt_basename (NONULL (src)), sizeof (fname));
- mutt_format_s (dest, destlen, prefix, fname);
- }
- else if (!aptr->content->d_filename && !aptr->content->filename)
- optional = 0;
- break;
case 'D':
if(!optional)
snprintf (dest, destlen, "%c", aptr->content->deleted ? 'D' : ' ');