]> granicus.if.org Git - neomutt/log
neomutt
8 years agomerge: new-mail
Richard Russon [Thu, 18 Aug 2016 16:44:51 +0000 (17:44 +0100)]
merge: new-mail

 * add ident to PATCHES
 * feature: new-mail

8 years agomerge: nested-if
Richard Russon [Thu, 18 Aug 2016 16:44:46 +0000 (17:44 +0100)]
merge: nested-if

 * add ident to PATCHES
 * feature: nested-if

8 years agomerge: lmdb
Richard Russon [Thu, 18 Aug 2016 16:44:42 +0000 (17:44 +0100)]
merge: lmdb

 * add ident to PATCHES
 * feature: lmdb
 * reformat

8 years agomerge: limit-current-thread
Richard Russon [Thu, 18 Aug 2016 16:44:38 +0000 (17:44 +0100)]
merge: limit-current-thread

 * add ident to PATCHES
 * feature: limit-current-thread
 * reformat

8 years agomerge: initials
Richard Russon [Thu, 18 Aug 2016 16:44:32 +0000 (17:44 +0100)]
merge: initials

 * add ident to PATCHES
 * feature: initials

8 years agomerge: fmemopen
Richard Russon [Thu, 18 Aug 2016 16:44:23 +0000 (17:44 +0100)]
merge: fmemopen

 * add ident to PATCHES
 * feature: fmemopen
 * add option to disable fmemopen

8 years agoadd option to disable fmemopen
Richard Russon [Sat, 6 Aug 2016 12:08:28 +0000 (13:08 +0100)]
add option to disable fmemopen

8 years agomerge: cond-date
Richard Russon [Thu, 18 Aug 2016 16:31:38 +0000 (17:31 +0100)]
merge: cond-date

 * add ident to PATCHES
 * feature: cond-date

8 years agomerge: ifdef
Richard Russon [Thu, 18 Aug 2016 16:31:33 +0000 (17:31 +0100)]
merge: ifdef

 * add ident to PATCHES
 * feature: ifdef
 * reformat

8 years agomerge: bug-neomutt
Richard Russon [Thu, 18 Aug 2016 16:31:23 +0000 (17:31 +0100)]
merge: bug-neomutt

 * add strndup.c strnlen.c
 * More careful file writing for aliases and attachments
 * Bye srandom() and random()
 * Don't whine if getrandom() fails.
 * Remove TLS version notification
 * Use unlocked libc IO everywhere.
 * debian: hurd build fix
 * quieten two compiler warnings
 * build tweak to allow testing
 * separate key bindings for <return> and <enter>
 * Add browser sort by description, message count and new message count

8 years agoreformat
Richard Russon [Thu, 18 Aug 2016 16:05:56 +0000 (17:05 +0100)]
reformat

8 years agoreformat
Richard Russon [Thu, 18 Aug 2016 16:03:42 +0000 (17:03 +0100)]
reformat

8 years agoreformat
Richard Russon [Thu, 18 Aug 2016 15:58:32 +0000 (16:58 +0100)]
reformat

8 years agofeature: lmdb
Pietro Cerutti [Thu, 2 Jun 2016 22:26:09 +0000 (23:26 +0100)]
feature: lmdb

8 years agofeature: new-mail
Yoshiki Vázquez Baeza [Sat, 23 Apr 2016 20:33:50 +0000 (13:33 -0700)]
feature: new-mail

This setting executes a command when new mail is received.

8 years agoadd ident to PATCHES
Richard Russon [Wed, 13 Jul 2016 22:01:16 +0000 (23:01 +0100)]
add ident to PATCHES

8 years agofeature: nested-if
David Champion [Mon, 1 Feb 2016 00:41:48 +0000 (00:41 +0000)]
feature: nested-if

Allow complex nested conditions in the index_format

8 years agoadd ident to PATCHES
Richard Russon [Wed, 17 Feb 2016 04:30:15 +0000 (04:30 +0000)]
add ident to PATCHES

8 years agoadd ident to PATCHES
Richard Russon [Wed, 13 Jul 2016 21:54:34 +0000 (22:54 +0100)]
add ident to PATCHES

8 years agofeature: limit-current-thread
David Sterba [Thu, 24 May 2012 13:34:53 +0000 (15:34 +0200)]
feature: limit-current-thread

Add command to limit view on the thread from any of its message.
Predefined on command <ESC>L, though the lowercase 'l' would be better
(less keystrokes), but it's already occupied by a not-so-useful command
"show limit".

Tested on large folders, no performance problems observed.

Search in current thread is not implemented.

Signed-off-by: David Sterba <dsterba@suse.cz>
8 years agoadd ident to PATCHES
Richard Russon [Sat, 26 Mar 2016 03:48:30 +0000 (03:48 +0000)]
add ident to PATCHES

8 years agofeature: initials
Vsevolod Volkov [Sun, 31 Jan 2016 17:17:10 +0000 (17:17 +0000)]
feature: initials

Expando for author's initials

8 years agoadd ident to PATCHES
Richard Russon [Wed, 17 Feb 2016 04:30:14 +0000 (04:30 +0000)]
add ident to PATCHES

8 years agofeature: ifdef
Cedric Duval [Tue, 26 Jan 2016 23:00:09 +0000 (23:00 +0000)]
feature: ifdef

Conditional config options

8 years agoadd ident to PATCHES
Richard Russon [Wed, 17 Feb 2016 04:30:13 +0000 (04:30 +0000)]
add ident to PATCHES

8 years agofeature: fmemopen
Julius Plenz [Sat, 30 Jan 2016 16:20:14 +0000 (16:20 +0000)]
feature: fmemopen

Replace some temporary files with memory buffers

8 years agoadd ident to PATCHES
Richard Russon [Wed, 17 Feb 2016 04:30:13 +0000 (04:30 +0000)]
add ident to PATCHES

8 years agofeature: cond-date
Aaron Schrab [Mon, 1 Feb 2016 01:04:48 +0000 (01:04 +0000)]
feature: cond-date

Use rules to choose date format

8 years agoadd ident to PATCHES
Richard Russon [Wed, 17 Feb 2016 04:30:13 +0000 (04:30 +0000)]
add ident to PATCHES

8 years agoAdd browser sort by description, message count and new message count
Tim Stoakes [Sun, 16 Sep 2012 07:31:54 +0000 (09:31 +0200)]
Add browser sort by description, message count and new message count

Now the browser can sort by mail folder description, (all) message count, and
new message count.

8 years agoseparate key bindings for <return> and <enter>
Mike Frysinger [Tue, 31 May 2016 20:17:41 +0000 (21:17 +0100)]
separate key bindings for <return> and <enter>

Split up <enter> (ctrl+j) and <return> (ctrl+m) into different bindings so
people can map them differently.  The default behavior is unchanged as we
map them both to the same function.

URL: http://dev.mutt.org/trac/ticket/3494

8 years agobuild tweak to allow testing
Richard Russon [Mon, 18 Apr 2016 04:18:20 +0000 (05:18 +0100)]
build tweak to allow testing

8 years agoquieten two compiler warnings
Richard Russon [Fri, 18 Mar 2016 22:38:18 +0000 (22:38 +0000)]
quieten two compiler warnings

8 years agodebian: hurd build fix
Richard Russon [Sat, 19 Mar 2016 15:12:21 +0000 (15:12 +0000)]
debian: hurd build fix

Hurd is missing a definition for PATH_MAX.

8 years agoUse unlocked libc IO everywhere.
David Wilson [Tue, 22 Oct 2013 18:34:57 +0000 (11:34 -0700)]
Use unlocked libc IO everywhere.

Since mutt does not use threads, there is no reason it should use the
locked variants of the FILE* IO functions. This checks if the unlocked
functions are available, and if so enables them globally via mutt.h.

Cuts load time for a 56k message, 1.8GB /var/mail mailbox from 14
seconds to ~6 seconds, since we avoid acquiring and releasing a mutex
for every character of input read.

Before: 0m14.376s

    74.98%          mutt  libc-2.18.so        [.] _IO_getc
    11.87%          mutt  mutt                [.] mbox_parse_mailbox
     0.94%          mutt  [kernel.kallsyms]   [k] copy_user_generic_string
     0.83%          mutt  libc-2.18.so        [.] __strchr_sse2
     0.53%          mutt  libc-2.18.so        [.] __memcpy_sse2
     0.44%          mutt  libc-2.18.so        [.] _int_malloc

After: 6 seconds

    68.92%     mutt  mutt                  [.] mbox_parse_mailbox
     2.25%     mutt  [kernel.kallsyms]     [k] copy_user_generic_string
     1.73%     mutt  libc-2.18.so          [.] __strchr_sse2
     1.24%     mutt  libc-2.18.so          [.] __memcpy_sse2
     1.17%     mutt  libc-2.18.so          [.] _int_malloc
     0.87%     mutt  libc-2.18.so          [.] __strspn_sse42

8 years agoRemove TLS version notification
Mantas Mikulėnas [Fri, 18 Oct 2013 18:34:57 +0000 (11:34 -0700)]
Remove TLS version notification

The reason for this patch is that the "TLS connection" message adds an
unnecessary, annoying, unskippable delay to _every_ mutt startup.

(Almost as if its intention was to _discourage_ TLS usage...)

8 years agoDon't whine if getrandom() fails.
Adam Borowski [Sun, 7 Aug 2016 03:48:14 +0000 (05:48 +0200)]
Don't whine if getrandom() fails.

Debian for example supports kernels down to 3.2, and getrandom() appeared
only on 3.16 on x86 or later on other archs.  Current stable has only 3.16
(ie, no getrandom() outside of x86), and ARM vendor kernels are for most
machines even older.

There is no security risk in falling back to /dev/urandom, as mutt quits
if that fails instead of using unsecure randomness.

This is a fix to commit "Bye srandom() and random()"

8 years agoBye srandom() and random()
Sami Farin [Wed, 16 Oct 2013 18:34:57 +0000 (11:34 -0700)]
Bye srandom() and random()

Prefer getrandom on Linux, use /dev/urandom otherwise to
get entropy for MIME boundaries, message-id, Maildir filename,
temporary filename.  Using MUTT_RANDTAG_LEN (currently 16) base32
characters for boundaries and message-id.

8 years agoMore careful file writing for aliases and attachments
Sami Farin [Wed, 16 Oct 2013 18:34:57 +0000 (11:34 -0700)]
More careful file writing for aliases and attachments

Use fsync and check for errors when appending to alias file,
saving attachments, and bouncing a message.  Still more checks are needed.
Also preserve errno if safe_fsync_close fails.

8 years agoadd strndup.c strnlen.c
Karel Zak [Thu, 6 Sep 2012 07:31:54 +0000 (09:31 +0200)]
add strndup.c strnlen.c

Reported-by: Vladimir.Marek@oracle.com
Signed-off-by: Karel Zak <kzak@redhat.com>
8 years agotravis: add config
Richard Russon [Wed, 13 Jul 2016 14:41:27 +0000 (15:41 +0100)]
travis: add config

8 years agoautomatic post-release commit for mutt-1.7.0
Kevin McCarthy [Thu, 18 Aug 2016 03:12:28 +0000 (20:12 -0700)]
automatic post-release commit for mutt-1.7.0

8 years agoUpdated Japanese translation.
TAKAHASHI Tamotsu [Thu, 18 Aug 2016 01:07:59 +0000 (18:07 -0700)]
Updated Japanese translation.

8 years agoUpdated Danish translation.
Morten Bo Johansen [Mon, 15 Aug 2016 17:17:47 +0000 (10:17 -0700)]
Updated Danish translation.

8 years agoUpdated Esperanto translation.
Benno Schulenberg [Mon, 15 Aug 2016 16:15:43 +0000 (09:15 -0700)]
Updated Esperanto translation.

8 years agoUpdated Dutch translation.
Benno Schulenberg [Mon, 15 Aug 2016 16:09:44 +0000 (09:09 -0700)]
Updated Dutch translation.

8 years agoUpdated Catalan translation.
Ivan Vilata i Balaguer [Wed, 10 Aug 2016 16:29:58 +0000 (09:29 -0700)]
Updated Catalan translation.

8 years agoUpdated French translation.
Vincent Lefevre [Wed, 10 Aug 2016 00:20:11 +0000 (02:20 +0200)]
Updated French translation.

8 years agoUpdated Russian translation.
Vsevolod Volkov [Tue, 9 Aug 2016 21:34:55 +0000 (14:34 -0700)]
Updated Russian translation.

8 years agoUpdated Ukrainian translation.
Vsevolod Volkov [Tue, 9 Aug 2016 21:32:21 +0000 (14:32 -0700)]
Updated Ukrainian translation.

8 years agoClear pager position upon returning to the index menu.
Kevin McCarthy [Mon, 8 Aug 2016 20:13:30 +0000 (13:13 -0700)]
Clear pager position upon returning to the index menu.

This fixes a bug where opening a message sometimes shows it scrolled
down.

The easiest way to trigger this is to open a long message in a mailbox
with no new messages, scroll down, hit <next-new-then-unread> and then
reopen the message.  The pager will "remember" the position and scroll
down.  If you simply exit the message and re-enter it, the position is
not saved.

More annoyingly, once in a very great while I will open a new message
and have the message scrolled down partway.  I believe this is due to
OldHdr happening to point to the same address as the Header of the new
message.

This is somewhat easily triggered on a mailbox with one message, which
you open, scroll down in, hit <next-new-then-unread> to exit, and then
delete/sync.  In another mutt instance, copy the same messsage back to
the mailbox, then open the message in the original mutt instance.  At
least some of the time, the OldHdr pointer matches the new message,
and so it opens scrolled down.

This patch solves the problem by clearing the pager position once all
redirections through the index menu are done.

8 years agoUpdated French translation.
Vincent Lefevre [Sat, 6 Aug 2016 21:35:16 +0000 (23:35 +0200)]
Updated French translation.

8 years agoRemove nonsensical size check in mutt_choose_charset()
Kevin McCarthy [Fri, 5 Aug 2016 21:33:39 +0000 (14:33 -0700)]
Remove nonsensical size check in mutt_choose_charset()

The charsets parameter is being tokenized by the : delimeter.

The checks against ENCWORD_LEN_MAX and ENCWORD_LEN_MIN make no sense,
and appear to be the result of a large merge a very long time ago
(changeset cb27682966d5).

I can only guess where this check was supposed to be, but it certainly
doesn't belong here.

8 years agoFix memory leak in mutt_choose_charset().
Kevin McCarthy [Fri, 5 Aug 2016 20:43:04 +0000 (13:43 -0700)]
Fix memory leak in mutt_choose_charset().

8 years agoFix memleak in mh_read_dir() when sequence parsing fails.
Kevin McCarthy [Fri, 5 Aug 2016 20:43:00 +0000 (13:43 -0700)]
Fix memleak in mh_read_dir() when sequence parsing fails.

8 years agoUpdate copyright notices.
Kevin McCarthy [Fri, 5 Aug 2016 18:02:44 +0000 (11:02 -0700)]
Update copyright notices.

8 years agoExplicitly NULL unimplemented pop mx_ops functions.
Kevin McCarthy [Wed, 3 Aug 2016 02:18:53 +0000 (19:18 -0700)]
Explicitly NULL unimplemented pop mx_ops functions.

The struct initialization already does this for unlisted fields, but
I'd rather be explicit about unimplemented operations.

8 years agoUse the ctx->mx_ops instead of calling mx_get_ops()
Kevin McCarthy [Wed, 3 Aug 2016 02:18:46 +0000 (19:18 -0700)]
Use the ctx->mx_ops instead of calling mx_get_ops()

With mx_open_mailbox_append() setting the ctx->mx_ops, all contexts
should have mx_ops set.

Remove calls to mx_get_ops() and instead directly use ctx->mx_ops.

8 years agoUse a different flag in mx_open_mailbox_append() when mailbox doesn't exist.
Kevin McCarthy [Tue, 2 Aug 2016 01:25:28 +0000 (18:25 -0700)]
Use a different flag in mx_open_mailbox_append() when mailbox doesn't exist.

The previous commit re-used MUTT_NEWFOLDER, but the meaning of that
flag is slightly different: it causes mbox to use fopen with mode "w",
and is used only for the case of a brand-new mktemp-generated mbox.

Setting it for other non-existing mbox files leads to a race condition
between the stat and the fopen/lock, and so could end up truncating an
existing mailbox created in-between!

Create a different flag, MUTT_APPENDNEW to notify the open_append()
functions that the mailbox doesn't exist.  Change maildir and mh to
check for that flag to create their directory structures.

8 years agoConvert mx_open_mailbox_append() to use ctx->mx_ops.
Kevin McCarthy [Mon, 1 Aug 2016 22:04:45 +0000 (15:04 -0700)]
Convert mx_open_mailbox_append() to use ctx->mx_ops.

Set the flag MUTT_NEWFOLDER to signal Maildir and MH to create the directory structure.

Distribute the "open append" code to mbox, mh, and imap/imap.c.

Set pop's mx_ops handler to NULL to signal it is not supported.

8 years agoMove fflush and fsync to the mbox and mmdf commit_msg functions.
Kevin McCarthy [Mon, 1 Aug 2016 01:42:07 +0000 (18:42 -0700)]
Move fflush and fsync to the mbox and mmdf commit_msg functions.

The case statement in mx_commit_message() was previously distributed
to the various ops->commit_msg() handlers, but the fflush and fsync were
not.

8 years agoAdd unread and total message count format strings to $folder_format.
Kevin McCarthy [Sat, 30 Jul 2016 18:11:07 +0000 (11:11 -0700)]
Add unread and total message count format strings to $folder_format.

%n will show the unread message count in the mailbox.  %m will show
total message count.  Except for %n with IMAP, these both require
$mail_check_stats to be set, which puts these counts inside BUFFY.

Since the imap_mboxcache is never fresher than the value in BUFFY,
remove the special imap_mailbox_state() call.  Instead, just update
from the current Context for all mailboxes.

Remove the logic that overrode the %N format string to show unread
count for IMAP mailboxes.  If they want to see unread count, they will
have to change the $folder_format.

Although it doesn't look possible to reuse browser_state.entry slots,
change the OP_DELETE_MAILBOX to memset(0) the deleted slot.  Then, we
can change to logic in add_folder() so it doesn't need to zero-out
unset values.

8 years agoFix imap buffy msg_count overwrite issue.
Richard Russon [Mon, 25 Jul 2016 19:25:23 +0000 (12:25 -0700)]
Fix imap buffy msg_count overwrite issue.

The sidebar updates the buffy->msg_count with the context.  This can
cause it to become out of sync with the imap_mboxcache.

If the imap_buffy doesn't request MESSAGES, don't overwrite the
buffy->msg_count with a stale value.

8 years agoConvert buffy_mbox_check() and trash_append() to use local context.
Kevin McCarthy [Fri, 22 Jul 2016 21:55:01 +0000 (14:55 -0700)]
Convert buffy_mbox_check() and trash_append() to use local context.

buffy_mbox_check() was leaking the dynamically allocated context.
Rather than add a call to free, just convert it to use a local
variable.

Make the same change to trash_append(), which doesn't need the
dynamically allocated context either.

8 years agoFix memleak in the new trash folder code.
Kevin McCarthy [Thu, 21 Jul 2016 21:00:24 +0000 (14:00 -0700)]
Fix memleak in the new trash folder code.

Free the context in opened in trash_append()

8 years agoUpdated French translation.
Vincent Lefevre [Thu, 21 Jul 2016 10:49:19 +0000 (12:49 +0200)]
Updated French translation.

8 years agoFilter directional markers that corrupt the screen. (closes #3854)
Kevin McCarthy [Wed, 20 Jul 2016 23:29:55 +0000 (16:29 -0700)]
Filter directional markers that corrupt the screen. (closes #3854)

Thanks to Vincent Lefèvre for working on these utf-8 screen display issues.

8 years agoFix arithmetic exception due to menu->pagelen being negative.
Anton Lindqvist [Wed, 20 Jul 2016 01:56:13 +0000 (18:56 -0700)]
Fix arithmetic exception due to menu->pagelen being negative.

Resizing the terminal window down to two lines when in an empty
mailbox causes mutt to crash due to division by zero since menu->max
equals 0 and menu->pagelen < 0 in status.c:205.

Fixing the problem at this specific line felt wrong since I did notice
menu->pagelen being negative. The pagelen is inherited from the rows
calculation in mutt_reflow_windows. Since the number of lines can
potentially be smaller than the accumulated number of rows acquired by
the status, help and message window, make sure the calculation does
not turn negative.

8 years agoAdd imap-fast-trash patch.
Kevin McCarthy [Mon, 18 Jul 2016 02:31:16 +0000 (19:31 -0700)]
Add imap-fast-trash patch.

This is based on the patch by Paul Miller.

Modifications are:

* Create a new flag, MUTT_TRASH for imap_make_msg_set(), rather than
  use MUTT_EXPIRED.

* Change imap_make_msg_set(MUTT_TRASH) to only look at
  hdrs[n]->deleted && !hdrs[n]->purge, behaving like MUTT_TAG, rather
  than looking at the HEADER_DATA.

* Reimplement imap_fast_trash() based on imap_copy_message().
  It looks the old version was too, but it lacked handling of TRYCREATE
  and also queued the UID COPY but didn't exec it.  (Presumably this
  happened in the subsequent sync).

* Move the Context magic and mx_is_imap() checks outside of
  imap_fast_trash()

8 years agoAdd purge-message patch.
Kevin McCarthy [Mon, 18 Jul 2016 02:31:13 +0000 (19:31 -0700)]
Add purge-message patch.

This is based on the patch by Cedric Duval.
Modifications are:

* Use the exising M_PURGE flag from the trash folder patch, rather
  than adding a separate flag.

* Undelete operations are already handled by the trash folder patch.

8 years agoAdd the trash folder patch.
Kevin McCarthy [Mon, 18 Jul 2016 02:31:09 +0000 (19:31 -0700)]
Add the trash folder patch.

This is based on the trash folder patch by Cedric Duval.
Modifications to the original patch are:

* Use a flag called M_PURGE instead of M_APPENDED.  The same flag is
  then used in the following "purge" patch instead of adding a
  different flag.

* Removed the counter in context.  The existing context->deleted
  is all that's needed.

* Removed the "auto unset M_PURGE" when M_DELETED is unset inside
  _mutt_set_flag(), although this is convenient, it easily leads to
  header->purge not being reset in a few situations.

* Reset purge flag along with the deleted flag if $delete is answered
  no.

* Set M_PURGE on an edited message. (edit_one_message())

* Preserve purge flag in mutt_reopen_mailbox()

* Turn off OPTCONFIRMAPPEND when saving to the trash, rather than
  hardcoding it off in mutt_save_confirm().  That way, normal save to the
  folder will respect the option.

8 years agoFix memory leak in mutt_sasl_cb_pass.
Will Fiveash [Sat, 16 Jul 2016 21:04:29 +0000 (14:04 -0700)]
Fix memory leak in mutt_sasl_cb_pass.

SASL doesn't free the sasl_secret_t, so this was leaking.  Instead,
keep our own pointer to it, and safe_realloc() each time.

sasl_secret_t doesn't need the data field null terminated, so memcpy
the password over.

8 years agoFix BODY->d_filename memory leaks.
Kevin McCarthy [Wed, 13 Jul 2016 01:04:28 +0000 (18:04 -0700)]
Fix BODY->d_filename memory leaks.

mutt_message_to_7bit() and transform_to_7bit() were overwriting
d_filename without freeing the previous value.

mutt_free_body() was not freeing the d_filename pointer.

8 years agoFix BODY->charset memory leaks.
Kevin McCarthy [Wed, 13 Jul 2016 00:46:09 +0000 (17:46 -0700)]
Fix BODY->charset memory leaks.

mutt_get_content_info() was directly setting charset without freeing the previous value.

mutt_free_body() was not freeing the charset.

8 years agoInitialize mutt windows even in batch mode. (closes #3853)
Kevin McCarthy [Tue, 12 Jul 2016 01:36:21 +0000 (18:36 -0700)]
Initialize mutt windows even in batch mode. (closes #3853)

mutt_select_fcc() calls mutt_addr_hook() -> mutt_make_string() which
refers to MuttIndexWindow->cols when calling mutt_FormatString().  In
batch mode, MuttIndexWindow hasn't been initialized, leading to a
segfault.

This might be the only overlap, but it seems wiser to just initialize
the mutt windows in case there are other references (now or in the
future) when processing format strings in batch mode.

8 years agoFix conststrings compiler version string generation. (closes #3852)
Unknown [Sat, 9 Jul 2016 02:08:45 +0000 (19:08 -0700)]
Fix conststrings compiler version string generation. (closes #3852)

The Makefile.am tries compiler flags -v, --version, and -V but
neglected to filter error messages if these flags aren't recognized.

8 years agoChange sidebar highlighted mailbox behavior.
Kevin McCarthy [Sat, 9 Jul 2016 01:52:56 +0000 (18:52 -0700)]
Change sidebar highlighted mailbox behavior.

Delay selecting the highlighted mailbox until prepare_mailbox(), to
avoid a hidden mailbox being selected during the Buffy list population
(in mutt_sb_notify_mailbox()).

Change update_entries_visibility() to not automatically make the
highlighted mailbox visible.

Change prepare_sidebar() to (re)set the highlighted mailbox when the
current highlighted mailbox is hidden.

8 years agoFix sidebar pagedown/up when mailboxes on the end are hidden.
Kevin McCarthy [Sat, 9 Jul 2016 01:52:51 +0000 (18:52 -0700)]
Fix sidebar pagedown/up when mailboxes on the end are hidden.

The pageup/pagedown code was setting the highlighted mailbox to the
top and bottom index without checking if those were hidden.

8 years agoDon't overwrite imap_status->uidnext with a lower value. (closes #3771)
Kevin McCarthy [Sat, 9 Jul 2016 01:47:57 +0000 (18:47 -0700)]
Don't overwrite imap_status->uidnext with a lower value.  (closes #3771)

imap_read_headers() updates the idata and imap_status uidnext after
reading through all the new headers.

The idata is updated properly (only if its uidnext is below maxuid+1),
but the imap_status was always being set to maxuid.

This causes a problem with new mail checking if the most recent
messages are deleted.  Then the uidnext will be greater than maxuid+1
in the mailbox, and if there are any other unread messages it will
*always* report new mail even if $mail_check_recent is set.

8 years agoFix the sidebar TopIndex and BotIndex when $sidebar_new_mail_only is set.
Kevin McCarthy [Thu, 7 Jul 2016 19:00:37 +0000 (12:00 -0700)]
Fix the sidebar TopIndex and BotIndex when $sidebar_new_mail_only is set.

When set, some of the entries can be hidden, so a simple division by
page_size to find the correct top/bottom isn't correct.

Instead, manually partition into groups of page_size visible entries
and set top and bottom based on the interval around the highlighted
entry.

8 years agoFilter soft hypen from pager and headers. (closes #3848)
Kevin McCarthy [Thu, 7 Jul 2016 16:21:04 +0000 (09:21 -0700)]
Filter soft hypen from pager and headers.  (closes #3848)

Add U+00AD SOFT HYPHEN to the filtered characters in headers and the
pager.  In some terminals and situations it causes major display problems.

8 years agoFix sidebar crash for non-existent mailbox
Richard Russon [Wed, 6 Jul 2016 19:31:02 +0000 (12:31 -0700)]
Fix sidebar crash for non-existent mailbox

If you <change-folder> to a non-existent mailbox, there will be no
Context.

8 years agomerge stable
Kevin McCarthy [Wed, 6 Jul 2016 17:43:56 +0000 (10:43 -0700)]
merge stable

8 years agomutt-1.6.2 signed
Kevin McCarthy [Wed, 6 Jul 2016 17:41:54 +0000 (10:41 -0700)]
mutt-1.6.2 signed

8 years agoAdded tag mutt-1-6-2-rel for changeset 7ccd4417bd70
Kevin McCarthy [Wed, 6 Jul 2016 17:40:35 +0000 (10:40 -0700)]
Added tag mutt-1-6-2-rel for changeset 7ccd4417bd70

8 years agoautomatic post-release commit for mutt-1.6.2
Kevin McCarthy [Wed, 6 Jul 2016 17:40:26 +0000 (10:40 -0700)]
automatic post-release commit for mutt-1.6.2

8 years agoFix the documented sort methods for sidebar_sort_method.
Kevin McCarthy [Sat, 2 Jul 2016 19:32:55 +0000 (12:32 -0700)]
Fix the documented sort methods for sidebar_sort_method.

Remove references to unused "date" and "size", and add "flagged".

8 years agoAdd R_SIDEBAR to redraw sidebar when its settings change.
Kevin McCarthy [Sat, 2 Jul 2016 19:25:59 +0000 (12:25 -0700)]
Add R_SIDEBAR to redraw sidebar when its settings change.

Add to the sidebar settings that control formatting of the sidebar.

8 years agoFix sidebar "unsorted" order to match Buffy list order.
Kevin McCarthy [Sat, 2 Jul 2016 19:24:25 +0000 (12:24 -0700)]
Fix sidebar "unsorted" order to match Buffy list order.

Since the previous commit decoupled the sidebar from the Buffy list,
we can now restore the order to match the buffy list when
sidebar_sort_method is set (back) to "unsorted".

8 years agoDecouple the sidebar from the Buffy list.
Kevin McCarthy [Sat, 2 Jul 2016 19:22:51 +0000 (12:22 -0700)]
Decouple the sidebar from the Buffy list.

Change the sidebar to use an array of SBENTRY* instead.  Move the
"is_hidden" into SBENTRY.  Remove the added "prev" pointer from BUFFY.

This way, sorting the sidebar doesn't affect the BUFFY list order, and
we don't need elements inside BUFFY just for the sidebar presentation.

Fix sidebar-next for the case where the mailboxes are unsorted and
$sidebar_new_mail_only is set.  Change sorting not to clump hidden
mailboxes at the bottom, instead simply skip over hidden mailboxes in
sidebar-next/prev.

8 years agomerge stable
Kevin McCarthy [Fri, 1 Jul 2016 20:39:51 +0000 (13:39 -0700)]
merge stable

8 years agoCheck $pgp_autoinline and $pgp_replyinline if oppenc is set. (closes #3846)
Kevin McCarthy [Fri, 1 Jul 2016 20:33:20 +0000 (13:33 -0700)]
Check $pgp_autoinline and $pgp_replyinline if oppenc is set. (closes #3846)

The first oppenc call takes place after the initial checks of
$pgp_autoline and $pgp_replyinline, and doesn't go through the pgp
menu.

Therefore, check for $pgp_autoline and $pgp_replyinline if oppenc is
set too, to avoid oppenc enabling encryption without INLINE being set
in those cases.

a6a4d6ed0f19 previously cleaned things up so that it is safe
to set INLINE even if encryption isn't enabled.

8 years agoFix missing sidebar documentation links. (closes #3847)
Kevin McCarthy [Thu, 30 Jun 2016 19:57:17 +0000 (12:57 -0700)]
Fix missing sidebar documentation links. (closes #3847)

USE_SIDEBAR needed to be set in doc/makedoc-defs.h so that the sidebar
option documentation is generated whether mutt is configured with the
sidebar or not.

8 years agoFix cppflags and muttlibs duplication with --with-gss.
Kevin McCarthy [Thu, 30 Jun 2016 01:58:53 +0000 (18:58 -0700)]
Fix cppflags and muttlibs duplication with --with-gss.

When krb5-config was found, MUTT_AM_PATH_GSSAPI included CFLAGS in
GSSAPI_CFLAGS and MUTTLIBS in GSSAPI_LIBS.  However, configure.ac
afterwards sets:
    CPPFLAGS="$CPPFLAGS $GSSAPI_CFLAGS"
    MUTTLIBS="$MUTTLIBS $GSSAPI_LIBS"
This caused the flags and libs to be duplicated.

8 years agoInclude ncurses tinfo library if found.
Kevin McCarthy [Thu, 30 Jun 2016 01:58:48 +0000 (18:58 -0700)]
Include ncurses tinfo library if found.

Thanks to Fabian Groffen for reporting this issue and providing a
couple possible patches.  From Fabian's report:

  For some time now, ncurses can be built in a mode where the low level
  terminfo functionality lives in a separate lib called libtinfo.
  Because some people do, this means Mutt needs to include this
  library in that case to avoid linking errors [...]

8 years agoClarify oppenc option documention. (closes #3846)
Kevin McCarthy [Wed, 29 Jun 2016 19:25:34 +0000 (12:25 -0700)]
Clarify oppenc option documention. (closes #3846)

Rephrase the option description to try and make it clearer what the
option does, and how to enable/disable it within a message.

8 years agoRemove unused SORT_DESC.
Kevin McCarthy [Tue, 28 Jun 2016 23:06:22 +0000 (16:06 -0700)]
Remove unused SORT_DESC.

This came over with the sidebar patch, but I believe is only used by
the notmuch extension.

8 years agoRemove $sidebar_refresh_time from Sample Sidebar Config
Fahri Cihan Demirci [Tue, 28 Jun 2016 22:59:09 +0000 (15:59 -0700)]
Remove $sidebar_refresh_time from Sample Sidebar Config

The $sidebar_refresh_time option was removed with the changeset
1f840760e6e0. Remove it from the sample sidebar configuration as well,
so that anyone using that file in its entirety won't have to deal with "unknown
variable" errors.

8 years agoChange sidebar to consistently use realpath for context and buffy comparison.
Kevin McCarthy [Thu, 23 Jun 2016 19:38:07 +0000 (12:38 -0700)]
Change sidebar to consistently use realpath for context and buffy comparison.

The original sidebar patch contained a half-implemented attempt to use
realpath() mailbox paths for comparison.  (Presumably so the open mailbox
remains highlighted despite symlink issues).

Add realpath to the Context, and set it when opening a mailbox.
Remove sidebar ifdef for the buffy member, and always set it there too.

Change the sidebar to use the realpath for comparison everywhere.

mutt_buffy_check() is using stat device and inode for comparison.
Perhaps this can be changed to use realpath instead, but that's beyond
the scope of this patch.

8 years agoChange sidebar next/prev-new to look at buffy->new too.
Kevin McCarthy [Wed, 22 Jun 2016 16:20:39 +0000 (09:20 -0700)]
Change sidebar next/prev-new to look at buffy->new too.

Look at new in addition to msg_unread count, to account for when
$mail_check_stats is unset or when the sidebar only shows the %n
status flag.