diff options
author | 2023-05-16 15:08:45 +0200 | |
---|---|---|
committer | 2023-05-16 15:08:45 +0200 | |
commit | e91cabb704b1cfc1cae438f5be8600e83dc5578e (patch) | |
tree | ad0fd473a7327fc602c63acfaf57b68c0efc2ef6 /internal/web/profile.go | |
parent | [bugfix] Fix proxy_pass in named location (#1794) (diff) | |
download | gotosocial-e91cabb704b1cfc1cae438f5be8600e83dc5578e.tar.xz |
[bugfix] Fix NegotiateFormat with multiple accept headers (#1797)
* [bugfix] Fix NegotiateAccept with multi accept
There's a bug in Gin's NegotiateFormat that doesn't handle the presence
of multilpe accept headers. This lifts the code from the PR @tsmethurst
sent a year ago to Gin into our codebase to fix the issue.
* [bugfix] Concat accept header in webfinger
Some implementations bug out when there's multiple accept headers,
including Gin (see 7050112af1ccc935ec542cb41fa8b07f7357539d). But things
seem to work reliably with a single accept header with multiple parts.
Fixes: #1793
Diffstat (limited to 'internal/web/profile.go')
-rw-r--r-- | internal/web/profile.go | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/internal/web/profile.go b/internal/web/profile.go index a4fddbafe..56f8e0a56 100644 --- a/internal/web/profile.go +++ b/internal/web/profile.go @@ -73,7 +73,7 @@ func (m *Module) profileGETHandler(c *gin.Context) { // if we're getting an AP request on this endpoint we // should render the account's AP representation instead - accept := c.NegotiateFormat(string(apiutil.TextHTML), string(apiutil.AppActivityJSON), string(apiutil.AppActivityLDJSON)) + accept := apiutil.NegotiateFormat(c, string(apiutil.TextHTML), string(apiutil.AppActivityJSON), string(apiutil.AppActivityLDJSON)) if accept == string(apiutil.AppActivityJSON) || accept == string(apiutil.AppActivityLDJSON) { m.returnAPProfile(ctx, c, username, accept) return |