diff options
author | Frédéric Guillot <fred@miniflux.net> | 2017-11-21 22:55:19 -0800 |
---|---|---|
committer | Frédéric Guillot <fred@miniflux.net> | 2017-11-21 22:55:19 -0800 |
commit | 99dfbdbb471ffc4e32fed78f23383b221d73155a (patch) | |
tree | 2ccfb02da69335daf4139b57431998407219c1ff /reader | |
parent | 855fb06bc93a628108990013813725996a090c17 (diff) |
Convert feed encoding only if the charset is specified
Diffstat (limited to 'reader')
-rw-r--r-- | reader/http/response.go | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/reader/http/response.go b/reader/http/response.go index f79b45b..7213be7 100644 --- a/reader/http/response.go +++ b/reader/http/response.go @@ -4,8 +4,12 @@ package http -import "io" -import "golang.org/x/net/html/charset" +import ( + "io" + "strings" + + "golang.org/x/net/html/charset" +) // Response wraps a server response. type Response struct { @@ -41,5 +45,8 @@ func (r *Response) IsModified(etag, lastModified string) bool { // NormalizeBodyEncoding make sure the body is encoded in UTF-8. func (r *Response) NormalizeBodyEncoding() (io.Reader, error) { - return charset.NewReader(r.Body, r.ContentType) + if strings.Contains(r.ContentType, "charset=") { + return charset.NewReader(r.Body, r.ContentType) + } + return r.Body, nil } |