diff --git a/pkg/mime/encoding.go b/pkg/mime/encoding.go index 59670d22..15364c88 100644 --- a/pkg/mime/encoding.go +++ b/pkg/mime/encoding.go @@ -255,11 +255,17 @@ func DecodeCharset(original []byte, contentType string) ([]byte, error) { } // ParseMediaType from MIME doesn't support RFC2231 for non asci / utf8 encodings so we have to pre-parse it. -func ParseMediaType(v string) (mediatype string, params map[string]string, err error) { +func ParseMediaType(v string) (string, map[string]string, error) { decoded, err := DecodeHeader(v) if err != nil { + logrus.WithField("value", v).WithError(err).Error("Media Type parsing error.") return "", nil, err } v, _ = changeEncodingAndKeepLastParamDefinition(decoded) - return mime.ParseMediaType(v) + mediatype, params, err := mime.ParseMediaType(v) + if err != nil { + logrus.WithField("value", v).WithError(err).Error("Media Type parsing error.") + return "", nil, err + } + return mediatype, params, err }