Fork of the aerc email client (https://sr.ht/~rjarry/aerc)
Find a file
Robin Jarry 074b0a1bd8 view,list: fix crash when viewing incomplete imap messages
With IMAP, due to an unidentified reason, some messages to not have any
body accessible. When viewing them, aerc crashes:

  git.sr.ht/~sircmpwn/aerc/lib.usePGP
          lib/messageview.go:37
  git.sr.ht/~sircmpwn/aerc/lib.NewMessageStoreView
          lib/messageview.go:67
  git.sr.ht/~sircmpwn/aerc/commands/account.ViewMessage.Execute
          commands/account/view.go:45
  git.sr.ht/~sircmpwn/aerc/commands.(*Commands).ExecuteCommand
          commands/commands.go:66
  main.execCommand
          aerc.go:61
  main.main.func2
          aerc.go:160
  aerc crashed: runtime error: invalid memory address or nil pointer
  dereference

Check the pointer before dereferencing.

Also, add a global check in ParseMessageFormat where a similar issue may
occur.

Signed-off-by: Robin Jarry <robin@jarry.cc>
2021-10-28 16:38:23 +02:00
commands add mimeType to OriginalMail struct for both forward and reply 2021-03-07 14:52:42 +01:00
completer Strip trailing newline from address book entries without names 2020-01-09 14:32:22 -05:00
config index: allow dynamic formatting of message dates 2021-10-28 16:30:59 +02:00
contrib Add contrib/_incr_version 2020-05-19 12:12:18 -04:00
doc index: allow dynamic formatting of message dates 2021-10-28 16:30:59 +02:00
filters Strip carriage returns (^M) when filtering emails 2019-08-20 16:05:20 +09:00
lib view,list: fix crash when viewing incomplete imap messages 2021-10-28 16:38:23 +02:00
models models: add RFC822 headers to OriginalMail 2020-11-14 15:40:13 +01:00
templates fix typo in quoted reply template 2021-03-07 23:25:04 +01:00
widgets view,compose: use border color to separate headers from body 2021-10-28 16:38:23 +02:00
worker notmuch/maildir: remove double emit of the dirinfo 2021-04-28 07:54:16 +02:00
.build.yml Update .build.yml 2020-07-29 15:27:51 -04:00
.gitignore Subsitute prefix in aerc.conf for install 2019-05-26 10:27:22 -04:00
aerc.go aerc: try to recover from a panic 2021-02-11 21:02:46 +01:00
go.mod update tcell to v2 and enable TrueColor support 2020-12-18 07:23:22 +01:00
go.sum update tcell to v2 and enable TrueColor support 2020-12-18 07:23:22 +01:00
LICENSE Add README.md, update license (MIT -2019) 2019-01-13 20:09:07 -05:00
Makefile Makefile: use git version string if we can 2021-02-07 19:25:06 +01:00
README.md README: freenode -> libera.chat 2021-08-26 09:18:56 +02:00

aerc

aerc is an email client for your terminal.

A short demonstration can be found on https://aerc-mail.org/

Join the IRC channel: #aerc on irc.libera.chat for end-user support, and #aerc-dev for development.

Usage

On its first run, aerc will copy the default config files to ~/.config/aerc on Linux or ~/Library/Preferences/aerc on MacOS (or $XDG_CONFIG_HOME/aerc if set) and show the account configuration wizard.

If you redirect stdout to a file, logging output will be written to that file:

$ aerc > log

For instructions and documentation: see man aerc and further specific man pages on there.

Note that the example HTML filter (off by default), additionally needs w3m and dante to be installed.

Installation

Binary Packages

Recent versions of aerc are available on:

And likely other platforms.

From Source

Install the dependencies:

Then compile aerc:

$ make

aerc optionally supports notmuch. To enable it, you need to have a recent version of notmuch, including the header files (notmuch.h). Then compile aerc with the necessary build tags:

$ GOFLAGS=-tags=notmuch make

To install aerc locally:

# make install

Resources

Send patches and questions to ~sircmpwn/aerc@lists.sr.ht

Instructions for preparing a patch are available at git-send-email.io

Subscribe to release announcements on ~sircmpwn/aerc-announce

Bugs & todo here: ~sircmpwn/aerc2