When updating mutt from an earlier release or from Git, please make sure to read the compatibility notes in ``UPDATING''. Installation instructions are detailed in ``INSTALL''. The user manual is in doc/manual.txt. GnuPG users should use the sample configuration in contrib/gpg.rc. Before you start hacking on mutt, read doc/devel-notes.txt. Before applying patches to mutt, read doc/applying-patches.txt. Please, read these files, as they will save you from asking FAQs. For more information, see the Mutt home page: http://www.mutt.org/ The primary distribution points for Mutt is: ftp://ftp.mutt.org/pub/mutt A list of mirror sites can be found under <http://www.mutt.org/download.html>.
Clone this repository
For self-hosted knots, clone URLs may differ based on your setup.
Download tar.gz
imap_open_mailbox() leaves IMAP_REOPEN_ALLOW set for the connection.
I noticed this previously but didn't bother untangling the logic yet
because the index always calls mx_check_mailbox() right away, which
unsets the flag.
However, when debugging the segv for commit 51729d8d I realized the
postponed menu/context also suffers from the problem, leaving the menu
ripe for segvs due to unmanaged expunges.
I believe imap_read_headers() turns it off and back on to avoid
goofing up imap_cmd_finish() when a reopen *is* allowed.
The logic needs to be cleaned up and fixed. However for a stable
branch fix, I'm am taking a conservative approach and just calling
mx_check_mailbox() to turn it back off.
mutt_get_postponed() was calling mx_close_mailbox(), but not checking
the return value. Because the postponed context is an actual
read-write, selected mailbox in a new connection, a failed close left
a dangling pointer in connection->idata->ctx.
imap_keepalive() traversed the connection list, finding the Postponed
connection still there, and passed the dangling pointer to
imap_check_mailbox.
Change an empty postponed mailbox to just call fastclose. Change the
other closes to retry on a postive return code "reopen" event and then
finally just call fastclose.
Outside the index and postponed menu, Mutt's code only uses append or
readonly temporary contexts. Those are guaranteed to call
mx_fastclose_mailbox() and return 0.
Rename to $sidebar_use_mailbox_shortcuts. The shortening wasn't that
much shorter and made the name confusing.
To prevent complaints in the future as others transition to 1.13,
default off.
In actuality, the parent_depth and indent_width won't ever be
negative.
But the new code for unset $sidebar_relative_shortpath_indent makes
this much less obvious. Better to be explicit than have some small
future code change result in a bug.
When unset this option provides the pre-1.13.0 sidebar indentation and
shortpath behavior.
Setting the option will enable the new (relative to previous entries)
indentation and shortening behavior.
Note the mailbox shortcuts are controlled by
$sidebar_use_mb_shortcuts, which defaults set.
I actually intended to push commit abfaa0e0 to a remote branch, but
accidentally ended up pushing it to stable. :-O
Anyway, I think the option is okay, but may have to tweek it a bit.
This fixes a mistake where it was placed out of order in init.h.
If unset, Mutt will revert to pre-1.13 display behavior, matching and
removing a literal $folder prefix, without using mailbox shortcuts.
Make the abbreviation a bit clearer, that it means Encryption instead
of Encoding.
Thanks to Morten Bo Johansen for the suggestion.
Sync from mutt.pot after 'make update-po'
Signed-off-by: Olaf Hering <olaf@aepfle.de>
The wording was ambiguous, and could give the impression that a
message, if fcc'ed, would contain the Bcc header when sent too.
Although the behavior has now been fixed, add $write_bcc references to
$record, $sendmail, and $smtp_url to make users more aware of the
behavior.
Signed-off-by: Olaf Hering <olaf@aepfle.de>
This is just an initial version, complete with typos and other
mistakes. Committing now so translators can refer to it.
Include attachments if it is 'yes' or 'ask-yes', like $copy and
$send_multipart_alternative.
Emulate the behavior of $copy, which performs fcc for 'yes' or
'ask-yes' values.
add view-alt function, so now we have
* view-alt "v"
* view-alt-text "Esc v"
* view-alt-mailcap "V"
Changing to mutt_read_line() avoids -Wunused-result warning while
reading the ignored line in query protocol response.
Most of these were already commented. Change a few of them to
a format gcc will recognize. In the future, we'll want to change to
whatever is standardized.
Some mail clients (*cough* Apple Mail) have started to put email
attachments in one of the multipart/alternative branches.
The config changes the searching to recurse inside alternatives when
performing attachment counting.
_() can invoke malloc, so remove l10n translations.
printf() is not safe either, so use write().
I'm not sure at this point about curs_set() and endwin(), but they
seem important enough for proper terminal cleanup to risk leaving in.
Thanks to Oswald Buddenhagen for pointing out the problem, and the old
trac ticket from Vincent at:
<https://gitlab.com/muttmua/trac-tickets/raw/master/tickets/open/3791-SIGQUIT_Ctrl_while_opening_mailbox_made_Mutt_hang.txt>
This was contributed by martin f. kraft, to give an example script for
the new $send_multipart_alternative_filter funtionality.
I recall seeing a message on IRC, where someone reported their macro
suddenly aborting after invoking an editor or something similar. At
the time, I wasn't sure of the problem, but this seems a likely
culprit, if the event caused a sigwinch.
Neither the menu.c nor the pager.c SigWinch handlers do such a thing.
The line was part of the initial import 21 years ago, so there is no
justification given.
Reset the SigWinch flag before the screen resize/reflow, not afterwards.
Change Fcc'ing to always write a Bcc header regardless of the setting.
Update the variable documentation to note the difference when Fcc'ing.
Since generating multipart types using
$send_multipart_alternative_filter will not send properly, display an
error message and block alternatives of that type.
There was no code that explicitly enabled APP_PGP mode when either the
recommendation engine or autocrypt menu were invoked. This would
cause the actual encryption to fail when sending.
This was hidden by the $crypt_opportunistic_encrypt config, which does
ensure it gets turned on. I can only guess that this variable is
popular with the autocrypt early adopters too.
Also explicity enable APP_PGP for $autocrypt_reply. We can't rely on
$crypt_autopgp to turn this on.
Create config variables $send_multipart_alternative (a quadoption)
and $send_multipart_alternative_filter. The filter script expects
output to be the mime type, a blank line, then the content.
Add ability to preview alternative from compose menu. <view-alt-text>
forces viewing as text. <view-alt-mailcap> forces using the mailcap.
Bind them to 'v' and 'V', respectively.
Improve <resend-message> so a multipart/alternative is stripped out,
which would just confuse the compose menu. Currently this preserves
the first alternative.
Allow alternative generation in batch mode, as long as the quadoption
is set to 'yes'.
Since we will be dealing with multipart/alternative, we need the
helpers to be a bit more specific.
We need to distinguish a top-level multipart/alternative from a
multipart/mixed created because of attachments.
MS Outlook seems to add charset=charset=utf-8 to Content-Type, which
results in charset_utf-8 inside Mutt, which in turn confuses others.
Strip a leading charset= from charset, so we work around this odd
behaviour.
Signed-off-by: Fabian Groffen <grobian@gentoo.org>
Because of the mutt_body_handler() invocation, we avoid using the
buffer pool.