diff options
author | Tim Culverhouse <tim@timculverhouse.com> | 2023-09-06 07:47:19 -0500 |
---|---|---|
committer | Robin Jarry <robin@jarry.cc> | 2023-09-19 01:16:52 +0200 |
commit | d57aa9e582f1644e2ee260c5c18fbf974dcc03ee (patch) | |
tree | 284fad08d1fceb50b4b86d23b39ab919a07bd3a4 /worker/notmuch/worker.go | |
parent | b17e8aed7c36f5f5ffc3c490704df78694477370 (diff) | |
download | aerc-d57aa9e582f1644e2ee260c5c18fbf974dcc03ee.tar.gz |
lib: return a new Header from LimitHeaders
The LimitHeaders function is used to optionally reduce memory usage of
aerc by only keeping certain headers in memory for the message list. The
function properly deletes header keys and values from the underlying
object, however the underlying data structure has a map and a slice -
which do not get resized after deletion: resulting in no actual memory
savings.
Create a new header and add only the headers we want to it. Return this
value and use in the MessageInfo struct.
Signed-off-by: Tim Culverhouse <tim@timculverhouse.com>
Acked-by: Robin Jarry <robin@jarry.cc>
Diffstat (limited to 'worker/notmuch/worker.go')
-rw-r--r-- | worker/notmuch/worker.go | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/worker/notmuch/worker.go b/worker/notmuch/worker.go index aa0d1135..d1eb69d0 100644 --- a/worker/notmuch/worker.go +++ b/worker/notmuch/worker.go @@ -678,9 +678,9 @@ func (w *worker) emitMessageInfo(m *Message, } switch { case len(w.headersExclude) > 0: - lib.LimitHeaders(info.RFC822Headers, w.headersExclude, true) + info.RFC822Headers = lib.LimitHeaders(info.RFC822Headers, w.headersExclude, true) case len(w.headers) > 0: - lib.LimitHeaders(info.RFC822Headers, w.headers, false) + info.RFC822Headers = lib.LimitHeaders(info.RFC822Headers, w.headers, false) } switch parent { case nil: |