aboutsummaryrefslogtreecommitdiffhomepage
path: root/reader/rss
diff options
context:
space:
mode:
authorGravatar Frédéric Guillot <fred@miniflux.net>2018-01-19 22:42:55 -0800
committerGravatar Frédéric Guillot <fred@miniflux.net>2018-01-20 13:25:21 -0800
commit713b38e34c6d4a232af871659793bb9674e020f7 (patch)
tree7f7797e140334d6ad69974cbce7e5f3746d31c6b /reader/rss
parent3b62f904d6d3fdad168d3b212ff7c465c01b50f4 (diff)
Handle more encoding edge cases
- Feeds with charset specified only in Content-Type header and not in XML document - Feeds with charset specified in both places - Feeds with charset specified only in XML document and not in HTTP header
Diffstat (limited to 'reader/rss')
-rw-r--r--reader/rss/parser.go5
1 files changed, 2 insertions, 3 deletions
diff --git a/reader/rss/parser.go b/reader/rss/parser.go
index 0e9738a..f5de561 100644
--- a/reader/rss/parser.go
+++ b/reader/rss/parser.go
@@ -10,15 +10,14 @@ import (
"github.com/miniflux/miniflux/errors"
"github.com/miniflux/miniflux/model"
-
- "golang.org/x/net/html/charset"
+ "github.com/miniflux/miniflux/reader/encoding"
)
// Parse returns a normalized feed struct from a RSS feed.
func Parse(data io.Reader) (*model.Feed, error) {
feed := new(rssFeed)
decoder := xml.NewDecoder(data)
- decoder.CharsetReader = charset.NewReaderLabel
+ decoder.CharsetReader = encoding.CharsetReader
err := decoder.Decode(feed)
if err != nil {