Add myself to the contributor list in the manual.

I didn't realize previous maintainers were in the list, so I guess I
should add myself. :-)
Allow tagging string config vars as L10N.

Translate them once in mutt_set_default().

Modify makedoc.pl to remove the N_() tag, and to also note the type as
"string (localized)".

The makedoc.pl already will ignore L10N comment so add a basic comment
above each config var in init.h.

I'm not tagging $crypt_protected_headers_subject because the spec now
says this should be "...".  I plan on implementing that change along
with other fixes before the next release.
Merge branch 'stable'
Fix doc install to check builddir first for bundled files.

Although some of the built files are bundled in the tarball, someone
could still try to build/install from a git checkout with a separate
build directory.  There might be other circumstances too, so better to
just add the check for now.
Merge branch 'stable'
Remove Muttrc and manual.txt from dist tarball files.

The Muttrc needs to be generated because of docdir substitution.  The
manual.txt may traditionally be generated by a different tool than the
one on my machine (lynx), so force that to be regenerated too.

It may still be necessary to just rebuild everything, but let's see if
this will do for stable for now.
Merge branch 'stable'
automatic post-release commit for mutt-1.14.2
Update UPDATING file for release.
Merge branch 'stable'
Fix mutt_pattern_comp() to not segv on a NULL pattern string.

The change to mutt_parse_score() could now result in a NULL score
pattern if the user specified ''.  It might be possible for this to
happen elsewhere too, so just add a check at the top of
mutt_pattern_comp() to handle the case.
Fix buffer pool buffer truncation with my_hdr and score commands.

The buffer pool is now used for command invocation, but unfortunately
a couple cases of mutt_buffer_init() were hidden in the my_hdr and
score command processors.

This would result in a shortened buffer being returned to the pool and
used later for something like the prompt - which expects LONG_STRING

Fix up the two places to instead copy the string over.  They don't
need to grab a large buffer pool sized hunk of memory.

Also, fix the mutt_buffer_pool_release() to resize upwards in case
future code does this.  I should have done this originally, but was
afraid it would paper over more serious issues.  :-/

Thanks to Armin Wolfermann for reporting the problem.
Merge branch 'stable'
Increase the buffer size in _mutt_get_field().

Not doing so caused the subsequent _mutt_enter_string() to use the
default buffer pool size of 1024 - negating the HUGE_STRING value
passed into _mutt_get_field().

(Once we fully transition to buffers, this awkwardness can go away...)
Refactor mutt_buffer_strip_formatting() inside of pager.c.

Rather than duplicate the logic, move the function back inside
pager.c.  Add a parameter to optionally remove attachment markers.

Inside fill_buffer(), use a stack-based buffer and directly assign the
buffer.data back to fmt, to keep it as fast as before.
Add cd command to change the current working directory.

Original Author: Christoph Berg <myon@debian.org>
Use cases are saving attachments to some other place and others.

Modified by Kevin McCarthy:
- Fix up documentation to use cmdsynopsis/command/arg.
- Add muttrc.man entry.
- Fix compilation error.
- Clean up the parse_cd() function to use buffers and remove new
  translation strings.
Merge branch 'stable'
Add mitigation against DoS from thousands of parts.

A demonstration attack using a million tiny parts will freeze Mutt for
several minutes.  This is actually better than some other mail
software, but can still be a problem at large levels.

For now, set it to a very conservative 5000, but this can be adjusted
up (or down) if necessary.

Declare the previous stack-limit max depth as a constant too, and
decrease it down to 50.  Change the handler to return non-fatal "1" on
reaching the limit.
5bbc6be5 — Cyril Roelandt 11 days ago
Add default keybindings for common operations.

This adds the following bindinds:

- ^P for "history up"
- ^N for "history down"
Clean up Editor Menu interface inside Mutt.

enter_filename() api:

* Rename enter_fname() to _enter_fname()

* Rename mutt_buffer_enter_mailbox() to mutt_enter_mailbox()

* Rename mutt_buffer_enter_filenames() to mutt_enter_filenames()

* Remove 'multiple' and 'fname buffer' parameters from
  mutt_enter_filenames().  Create a temp buffer, and enable multiple
  automatically.  This removes the possibility of mistakenly looking
  at an unpopulated 'fname' parameter for the result.

* Create mutt_enter_filename().  This isn't used currently, but it
  makes sense to have a "single filename" api already set up with
  correct parameters.

get_field() api:

* Rename _mutt_buffer_get_field() to a static _get_field() function.

* Remove _mutt_get_field() and make mutt_get_field() an actual

* Remove the multiple/files/numfiles parameters, since this
  should only be done through mutt_enter_filenames().

_mutt_enter_string() api:

Add comments to mutt_enter_string() and _mutt_enter_string() headers.
Noting that they should generally not be called directly.  List the
functions that should be used inside Mutt.  Note the behavior of the
multiple parameter.