lib/parse: use go-message msgid parsing if it succeeds

This commit is contained in:
Reto Brunner 2020-11-08 13:39:51 +01:00
parent 256af6322b
commit 18b0ea571a

View file

@ -129,9 +129,13 @@ func parseEnvelope(h *mail.Header) (*models.Envelope, error) {
if err != nil { if err != nil {
return nil, fmt.Errorf("could not read subject: %v", err) return nil, fmt.Errorf("could not read subject: %v", err)
} }
msgID, err := h.Text("message-id") msgID, err := h.MessageID()
if err != nil { if err != nil {
return nil, fmt.Errorf("could not read message id: %v", err) //proper parsing failed, so fall back to whatever is there
msgID, err = h.Text("message-id")
if err != nil {
return nil, err
}
} }
date, err := parseDate(h) date, err := parseDate(h)
if err != nil { if err != nil {