From ef2ace0afe5f44db32f4b48eae8ffb04a84d92ea Mon Sep 17 00:00:00 2001 From: James Houlahan Date: Tue, 25 Aug 2020 15:14:35 +0200 Subject: [PATCH] fix: always check charset before utf8 validity --- pkg/message/parser/part.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkg/message/parser/part.go b/pkg/message/parser/part.go index 989f3640..4045bbfd 100644 --- a/pkg/message/parser/part.go +++ b/pkg/message/parser/part.go @@ -65,10 +65,6 @@ func (p *Part) AddChild(child *Part) { } func (p *Part) ConvertToUTF8() error { - if utf8.Valid(p.Body) { - return nil - } - t, params, err := p.Header.ContentType() if err != nil { return err @@ -99,6 +95,10 @@ func selectSuitableDecoder(p *Part, t string, params map[string]string) *encodin } } + if utf8.Valid(p.Body) { + return encoding.Nop.NewDecoder() + } + encoding, _, _ := charset.DetermineEncoding(p.Body, t) return encoding.NewDecoder()