From 8ecf0b73f41f9319f9d89d61f8d4619aa4e69758 Mon Sep 17 00:00:00 2001 From: Reto Brunner Date: Mon, 8 Feb 2021 09:06:25 +0100 Subject: maildir: don't read the full file into memory --- worker/maildir/message.go | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/worker/maildir/message.go b/worker/maildir/message.go index 55e2613b..b3c2e8ff 100644 --- a/worker/maildir/message.go +++ b/worker/maildir/message.go @@ -1,10 +1,9 @@ package maildir import ( - "bytes" + "bufio" "fmt" "io" - "io/ioutil" "github.com/emersion/go-maildir" "github.com/emersion/go-message" @@ -26,12 +25,7 @@ func (m Message) NewReader() (io.Reader, error) { if err != nil { return nil, err } - defer f.Close() - b, err := ioutil.ReadAll(f) - if err != nil { - return nil, err - } - return bytes.NewReader(b), nil + return bufio.NewReader(f), nil } // Flags fetches the set of flags currently applied to the message. -- cgit