diff options
Diffstat (limited to 'worker/lib/parse.go')
-rw-r--r-- | worker/lib/parse.go | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/worker/lib/parse.go b/worker/lib/parse.go index 87f94bdd..6d73a1f5 100644 --- a/worker/lib/parse.go +++ b/worker/lib/parse.go @@ -211,7 +211,7 @@ func parseAddressList(h *mail.Header, key string) ([]*mail.Address, error) { // RawMessage is an interface that describes a raw message type RawMessage interface { - NewReader() (io.Reader, error) + NewReader() (io.ReadCloser, error) ModelFlags() ([]models.Flag, error) Labels() ([]string, error) UID() uint32 @@ -225,6 +225,7 @@ func MessageInfo(raw RawMessage) (*models.MessageInfo, error) { if err != nil { return nil, err } + defer r.Close() msg, err := message.Read(r) if err != nil { return nil, fmt.Errorf("could not read message: %v", err) |