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

Workaround for PGP send.c bug introduced between 1.5.3 and 1.5.5.1



I have not been able to use any version of mutt after 1.5.3 under
Cygwin because replying to emails would usually result in no quoted
text.

I think I finally figured out why.  Look at the following code
snippets from ci_send_message (file:send.c, line 1306)

In version 1.5.3, we have:

|| #ifdef HAVE_PGP
||   if (! (flags & SENDKEY))
|| #endif
||     safe_fclose (&tempfp);

In version 1.5.5.1, this has been changed to:

||  if ((WithCrypto & APPLICATION_PGP) && !(flags & SENDKEY))
||    safe_fclose (&tempfp);

These two code stanzas do *NOT* behave the same way when mutt is
compiled with --disable-pgp and --disable-smime (which I do).  I'm
seeing a zero byte file when my editor comes up in "mutt_edit_file"
because the "safe_fclose (&tempfp)" is being bypassed in 1.5.5.1.
It works fine in 1.5.3 because the "if" has been #ifdef'ed out,
hence the file is always closed properly.

There are many more cases where "#ifdef HAVE_PGP" has been replaced
by "if ((WithCrypto & APPLICATION_PGP) &&" in send.c, and I don't
know if any of them are causing me problems like the one I quoted.
For now, I just recompiled with PGP and SMIME until someone with
more of a big picture view of mutt looks at the problem and decides
what the proper way of solving it is.

Cheers!

-- 
rudy - mutt user since v0.93