aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDominique Feyer <dfeyer@ttree.ch>2018-09-09 23:31:47 +0200
committerDominique Feyer <dfeyer@ttree.ch>2018-09-09 23:31:47 +0200
commitb79c126ee0977e44e21f275418862fede0e1f346 (patch)
tree6c9ce90ca72a7549440b74c79a8642609df5b262
parent3f64ba5fc8f29efeadf7a072cf8339c778b3fd2d (diff)
downloadpleroma-b79c126ee0977e44e21f275418862fede0e1f346.tar.gz
Add missing URL encoding in create authorization redirect
-rw-r--r--lib/pleroma/web/oauth/oauth_controller.ex11
1 files changed, 7 insertions, 4 deletions
diff --git a/lib/pleroma/web/oauth/oauth_controller.ex b/lib/pleroma/web/oauth/oauth_controller.ex
index 160cedd8e..8fe0dde6e 100644
--- a/lib/pleroma/web/oauth/oauth_controller.ex
+++ b/lib/pleroma/web/oauth/oauth_controller.ex
@@ -39,15 +39,18 @@ defmodule Pleroma.Web.OAuth.OAuthController do
})
else
connector = if String.contains?(redirect_uri, "?"), do: "&", else: "?"
- url = "#{redirect_uri}#{connector}code=#{auth.token}"
+ url = "#{redirect_uri}#{connector}"
+ url_params = %{:code => auth.token}
- url =
+ url_params =
if params["state"] do
- url <> "&state=#{params["state"]}"
+ Map.put(url_params, :state, params["state"])
else
- url
+ url_params
end
+ url = "#{url}#{Plug.Conn.Query.encode url_params}"
+
redirect(conn, external: url)
end
end