X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=send.c;h=f5ffa26cc46e6bc714fe721b41c402e733f19f98;hp=6bd788512564e875c33323f1d6707287930e5cd2;hb=bfd542dec20e42f78915f8076bf1bf34e502c5b3;hpb=1d0ce70b85c36973b50e5783fe7b72941c81c0a9 diff --git a/send.c b/send.c index 6bd7885..f5ffa26 100644 --- a/send.c +++ b/send.c @@ -603,7 +603,7 @@ void mutt_make_misc_reply_headers (ENVELOPE * env, if (curenv->real_subj) { p_delete(&env->subject); env->subject = p_new(char, m_strlen(curenv->real_subj) + 5); - sprintf (env->subject, "Re: %s", curenv->real_subj); /* __SPRINTF_CHECKED__ */ + sprintf (env->subject, "Re: %s", curenv->real_subj); } else if (!env->subject) env->subject = m_strdup("Re: your mail"); @@ -849,62 +849,59 @@ static int generate_body (FILE * tempfp, /* stream for outgoing message * void mutt_set_followup_to (ENVELOPE * e) { - address_t *from; - - /* - * Only generate the Mail-Followup-To if the user has requested it, and - * it hasn't already been set - */ + /* + * Only generate the Mail-Followup-To if the user has requested it, and + * it hasn't already been set + */ + if (!option(OPTFOLLOWUPTO)) + return; - if (!option (OPTFOLLOWUPTO)) - return; #ifdef USE_NNTP - if (option (OPTNEWSSEND)) { - if (!e->followup_to && e->newsgroups && (strrchr (e->newsgroups, ','))) - e->followup_to = m_strdup(e->newsgroups); - return; - } + if (option(OPTNEWSSEND)) { + if (!e->followup_to && e->newsgroups && strrchr(e->newsgroups, ',')) + e->followup_to = m_strdup(e->newsgroups); + return; + } #endif - if (!e->mail_followup_to) { + if (e->mail_followup_to) + return; + if (mutt_is_list_cc (0, e->to, e->cc)) { - address_t **tmp; - /* - * this message goes to known mailing lists, so create a proper - * mail-followup-to header - */ + address_t **tmp; - tmp = address_list_append(&e->mail_followup_to, address_list_dup(e->to)); - address_list_append(tmp, address_list_dup(e->cc)); + /* + * this message goes to known mailing lists, so create a proper + * mail-followup-to header + */ + tmp = address_list_append(&e->mail_followup_to, address_list_dup(e->to)); + address_list_append(tmp, address_list_dup(e->cc)); } /* remove ourselves from the mail-followup-to header */ - e->mail_followup_to = remove_user (e->mail_followup_to, 0); + e->mail_followup_to = remove_user(e->mail_followup_to, 0); /* * If we are not subscribed to any of the lists in question, - * re-add ourselves to the mail-followup-to header. The + * re-add ourselves to the mail-followup-to header. The * mail-followup-to header generated is a no-op with group-reply, * but makes sure list-reply has the desired effect. */ + if (e->mail_followup_to && !mutt_is_list_recipient(0, e->to, e->cc)) { + address_t *from; - if (e->mail_followup_to && !mutt_is_list_recipient (0, e->to, e->cc)) { - if (e->reply_to) - from = address_list_dup (e->reply_to); - else if (e->from) - from = address_list_dup (e->from); - else - from = mutt_default_from (); + if (e->reply_to) + from = address_list_dup(e->reply_to); + else if (e->from) + from = address_list_dup(e->from); + else + from = mutt_default_from(); - if (from) { - address_list_append(&from->next, e->mail_followup_to); + address_list_append(&from, e->mail_followup_to); e->mail_followup_to = from; - } } address_list_uniq(e->mail_followup_to); - - } } @@ -913,50 +910,48 @@ void mutt_set_followup_to (ENVELOPE * e) from field */ static address_t *set_reverse_name (ENVELOPE * env) { - address_t *tmp; + address_t *tmp; - for (tmp = env->to; tmp; tmp = tmp->next) { - if (mutt_addr_is_user (tmp)) - break; - } - if (!tmp) { + for (tmp = env->to; tmp; tmp = tmp->next) { + if (mutt_addr_is_user(tmp)) + goto found; + } for (tmp = env->cc; tmp; tmp = tmp->next) { - if (mutt_addr_is_user (tmp)) - break; + if (mutt_addr_is_user(tmp)) + goto found; } - } - if (!tmp && mutt_addr_is_user (env->from)) - tmp = env->from; - if (tmp) { - tmp = address_dup (tmp); - if (!option (OPTREVREAL)) - p_delete(&tmp->personal); - if (!tmp->personal) - tmp->personal = m_strdup(Realname); - } - return (tmp); + + if (!mutt_addr_is_user(env->from)) + return NULL; + + found: + tmp = address_dup(tmp); + if (!option(OPTREVREAL) || !tmp->personal) { + p_delete(&tmp->personal); + tmp->personal = m_strdup(Realname); + } + return tmp; } address_t *mutt_default_from (void) { address_t *adr; - const char *fqdn = mutt_fqdn (1); - /* - * Note: We let $from override $realname here. Is this the right - * thing to do? + /* + * Note: We let $from override $realname here. + * Is this the right thing to do? */ if (From) - adr = address_dup (From); + adr = address_dup(From); else if (option (OPTUSEDOMAIN)) { - adr = address_new (); + const char *fqdn = mutt_fqdn (1); + adr = address_new(); adr->mailbox = p_new(char, m_strlen(Username) + m_strlen(fqdn) + 2); - sprintf (adr->mailbox, "%s@%s", NONULL (Username), NONULL (fqdn)); /* __SPRINTF_CHECKED__ */ - } - else { + sprintf(adr->mailbox, "%s@%s", NONULL(Username), NONULL(fqdn)); + } else { adr = address_new (); - adr->mailbox = m_strdup(NONULL (Username)); + adr->mailbox = m_strdup(NONULL(Username)); } return (adr); @@ -1043,7 +1038,7 @@ int mutt_resend_message (FILE * fp, CONTEXT * ctx, HEADER * cur) { HEADER *msg = header_new(); - if (mutt_prepare_template (fp, ctx, msg, cur, 1) < 0) + if (mutt_prepare_template (fp, ctx, msg, cur, option(OPTWEED)) < 0) return -1; return ci_send_message (SENDRESEND, msg, NULL, ctx, cur);