<<< Date Index >>>     <<< Thread Index >>>

Re: Segmentation fault from mutt-1.5.17 with SMTP



On Monday, 10 November 2008 at 21:17, Gary Johnson wrote:
> I'm using the 1.5.17 source, which doesn't have 'envfrom', so I
> don't know what that means for the problem I've been having.  I did
> use gdb more this evening and looked at the code in the
> ci_send_message() function in send.c.  The problem seems to be that
> 'killfrom' is set to 1 near the top of the function with the
> expectation that its value and the value of 'msg->env->from' will be
> (re)set correctly after the send-hooks are executed.  However,
> send-hooks aren't executed in batch mode, so 'killfrom' is never
> reset and hence 'msg->env->from' is deleted before the message is
> sent.  I made the following change which seems to fix the problem.
> 
> 
> +++ send.c      2008-11-10 20:00:13.703739000 -0800
> @@ -1222,7 +1222,8 @@
>    if (!msg->env->from && option (OPTUSEFROM) && !(flags & 
> (SENDPOSTPONED|SENDRESEND)))
>    {
>      msg->env->from = mutt_default_from ();
> -    killfrom = 1;      /* $use_from will be re-checked after send-hooks */
> +    if (!(flags & SENDBATCH))
> +      killfrom = 1;    /* $use_from will be re-checked after send-hooks */
>    }
>  
>    if (flags & SENDBATCH) 
> 
> 
> I will admit that I don't completely understand the relationships
> among 'killfrom', option(OPTUSEFROM) and msg->env->from, or all the
> implications of the various flags, so I may have missed something,
> but I'm going to try this "fix" for a while and see what happens.

If you're going to the trouble of hacking on the source anyway, I'd
suggest you use 1.5.18 or the latest from mercurial.

Attachment: pgpY13MK8u2yW.pgp
Description: PGP signature