diff options
| author | 2025-10-14 13:59:44 +0200 | |
|---|---|---|
| committer | 2025-10-17 15:33:20 +0200 | |
| commit | c9208ae56c7a8b4846711674021de2c359c57755 (patch) | |
| tree | 6133efd6d61f2c30eb691af14c650c322806cfdf | |
| parent | [feature] granular admin scopes for custom emojis (#4489) (diff) | |
| download | gotosocial-c9208ae56c7a8b4846711674021de2c359c57755.tar.xz | |
[bugfix] rss feed validation (#4499)
without those final `.FeedXml()` calls the feed objects weren't getting wrapped in the required top-level object with the XML namespace definition
Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4499
Co-authored-by: kim <grufwub@gmail.com>
Co-committed-by: kim <grufwub@gmail.com>
| -rw-r--r-- | internal/api/util/response.go | 1 | ||||
| -rw-r--r-- | internal/web/rss.go | 4 |
2 files changed, 3 insertions, 2 deletions
diff --git a/internal/api/util/response.go b/internal/api/util/response.go index ff58b68e3..b994abcca 100644 --- a/internal/api/util/response.go +++ b/internal/api/util/response.go @@ -197,6 +197,7 @@ func EncodeXMLResponse( // Wrap buffer in XML encoder. enc := xml.NewEncoder(buf) + enc.Indent("", " ") // Encode JSON data into byte buffer. if err := enc.Encode(data); err == nil { diff --git a/internal/web/rss.go b/internal/web/rss.go index d812ddc33..7fe941320 100644 --- a/internal/web/rss.go +++ b/internal/web/rss.go @@ -186,9 +186,9 @@ func (m *Module) rssFeedGETHandler(c *gin.Context) { // Encode response. switch contentType { case apiutil.AppRSSXML: - apiutil.XMLType(c, http.StatusOK, appRSSUTF8, &feeds.Rss{feed}) + apiutil.XMLType(c, http.StatusOK, appRSSUTF8, (&feeds.Rss{feed}).FeedXml()) case apiutil.AppAtomXML: - apiutil.XMLType(c, http.StatusOK, appAtomUTF8, &feeds.Atom{feed}) + apiutil.XMLType(c, http.StatusOK, appAtomUTF8, (&feeds.Atom{feed}).FeedXml()) case apiutil.AppFeedJSON, apiutil.AppJSON: apiutil.JSONType(c, http.StatusOK, appJSONUTF8, (&feeds.JSON{feed}).JSONFeed()) } |
