- case OP_FORWARD_MESSAGE:
- CHECK_ATTACH;
- mutt_attach_forward (fp, hdr, idx, idxlen,
- menu->tagprefix ? NULL : idx[menu->current]->content, 0);
- menu->redraw = REDRAW_FULL;
- break;
-
-#ifdef USE_NNTP
- case OP_FORWARD_TO_GROUP:
- CHECK_ATTACH;
- mutt_attach_forward (fp, hdr, idx, idxlen,
- menu->tagprefix ? NULL : idx[menu->current]->content, SENDNEWS);
- menu->redraw = REDRAW_FULL;
- break;
-
- case OP_FOLLOWUP:
- CHECK_ATTACH;
-
- if (!idx[menu->current]->content->hdr->env->followup_to ||
- mutt_strcasecmp (idx[menu->current]->content->hdr->env->followup_to, "poster") ||
- query_quadoption (OPT_FOLLOWUPTOPOSTER,_("Reply by mail as poster prefers?")) != M_YES)
- {
- mutt_attach_reply (fp, hdr, idx, idxlen,
- menu->tagprefix ? NULL : idx[menu->current]->content,
- SENDNEWS|SENDREPLY);
- menu->redraw = REDRAW_FULL;
- break;
- }
-#endif
-
- case OP_REPLY:
- case OP_GROUP_REPLY:
- case OP_LIST_REPLY:
-
- CHECK_ATTACH;
-
- flags = SENDREPLY |
- (op == OP_GROUP_REPLY ? SENDGROUPREPLY : 0) |
- (op == OP_LIST_REPLY ? SENDLISTREPLY : 0);
- mutt_attach_reply (fp, hdr, idx, idxlen,
- menu->tagprefix ? NULL : idx[menu->current]->content, flags);
- menu->redraw = REDRAW_FULL;
- break;
-
- case OP_EDIT_TYPE:
- mutt_edit_content_type (hdr, idx[menu->current]->content, fp);
- mutt_update_attach_index (cur, &idx, &idxlen, &idxmax, menu);
- break;
-
- case OP_EXIT:
- mx_close_message (&msg);
- hdr->attach_del = 0;
- while (idxmax-- > 0)
- {
- if (!idx[idxmax])
- continue;
- if (idx[idxmax]->content && idx[idxmax]->content->deleted)
- hdr->attach_del = 1;
- if (idx[idxmax]->content)
- idx[idxmax]->content->aptr = NULL;
- FREE (&idx[idxmax]->tree);
- FREE (&idx[idxmax]);
- }
- if (hdr->attach_del)
- hdr->changed = 1;
- FREE (&idx);
- idxmax = 0;
-
- if (WithCrypto && need_secured && secured)
- {
- fclose (fp);
- mutt_free_body (&cur);
- }
-
- mutt_menuDestroy (&menu);
- return;
+ case OP_BOUNCE_MESSAGE:
+ CHECK_ATTACH;
+ mutt_attach_bounce (fp, hdr, idx, idxlen,
+ menu->tagprefix ? NULL : idx[menu->current]->
+ content);
+ menu->redraw = REDRAW_FULL;
+ break;
+
+ case OP_FORWARD_MESSAGE:
+ CHECK_ATTACH;
+ mutt_attach_forward (fp, hdr, idx, idxlen,
+ menu->tagprefix ? NULL : idx[menu->current]->
+ content, 0);
+ menu->redraw = REDRAW_FULL;
+ break;
+
+ case OP_REPLY:
+ case OP_GROUP_REPLY:
+ case OP_LIST_REPLY:
+
+ CHECK_ATTACH;
+
+ flags = SENDREPLY |
+ (op == OP_GROUP_REPLY ? SENDGROUPREPLY : 0) |
+ (op == OP_LIST_REPLY ? SENDLISTREPLY : 0);
+ mutt_attach_reply (fp, hdr, idx, idxlen,
+ menu->tagprefix ? NULL : idx[menu->current]->content,
+ flags);
+ menu->redraw = REDRAW_FULL;
+ break;
+
+ case OP_EDIT_TYPE:
+ mutt_edit_content_type (hdr, idx[menu->current]->content, fp);
+ mutt_update_attach_index (cur, &idx, &idxlen, &idxmax, menu);
+ break;
+
+ case OP_EXIT:
+ mx_close_message (&msg);
+ hdr->attach_del = 0;
+ while (idxmax-- > 0) {
+ if (!idx[idxmax])
+ continue;
+ if (idx[idxmax]->content && idx[idxmax]->content->deleted)
+ hdr->attach_del = 1;
+ if (idx[idxmax]->content)
+ idx[idxmax]->content->aptr = NULL;
+ p_delete(&idx[idxmax]->tree);
+ p_delete(&idx[idxmax]);
+ }
+ if (hdr->attach_del)
+ hdr->changed = 1;
+ p_delete(&idx);
+ idxmax = 0;
+
+ if (need_secured && secured) {
+ m_fclose(&fp);
+ body_list_wipe(&cur);
+ }
+
+ mutt_menuDestroy (&menu);
+ return;