diff options
author | lambda <pleromagit@rogerbraun.net> | 2018-11-14 18:17:10 +0000 |
---|---|---|
committer | lambda <pleromagit@rogerbraun.net> | 2018-11-14 18:17:10 +0000 |
commit | cc45797f4e1765f5123c058166f6032c6a6556a0 (patch) | |
tree | 07ad2b2dd44189ae14a1ff44ff5a98013143866b /lib | |
parent | 8456675c458fea610307425add23432d3e811e83 (diff) | |
parent | f52a1d1ec5d44eb882b7bebf4d3242737ff9701b (diff) | |
download | pleroma-cc45797f4e1765f5123c058166f6032c6a6556a0.tar.gz |
Merge branch 'fix-media-proxy-filename' into 'develop'
media_proxy: use path only to retrieve filename
See merge request pleroma/pleroma!450
Diffstat (limited to 'lib')
-rw-r--r-- | lib/pleroma/web/media_proxy/controller.ex | 2 | ||||
-rw-r--r-- | lib/pleroma/web/media_proxy/media_proxy.ex | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/lib/pleroma/web/media_proxy/controller.ex b/lib/pleroma/web/media_proxy/controller.ex index 10e6b4e52..bb257c262 100644 --- a/lib/pleroma/web/media_proxy/controller.ex +++ b/lib/pleroma/web/media_proxy/controller.ex @@ -30,7 +30,7 @@ defmodule Pleroma.Web.MediaProxy.MediaProxyController do with true <- Keyword.get(config, :enabled, false), {:ok, url} <- Pleroma.Web.MediaProxy.decode_url(sig, url), - filename <- Path.basename(url), + filename <- Path.basename(URI.parse(url).path), true <- if(Map.get(params, "filename"), do: filename == Path.basename(conn.request_path), diff --git a/lib/pleroma/web/media_proxy/media_proxy.ex b/lib/pleroma/web/media_proxy/media_proxy.ex index 6819c0917..93c36b4ed 100644 --- a/lib/pleroma/web/media_proxy/media_proxy.ex +++ b/lib/pleroma/web/media_proxy/media_proxy.ex @@ -15,7 +15,7 @@ defmodule Pleroma.Web.MediaProxy do base64 = Base.url_encode64(url, @base64_opts) sig = :crypto.hmac(:sha, secret, base64) sig64 = sig |> Base.url_encode64(@base64_opts) - filename = Path.basename(url) + filename = Path.basename(URI.parse(url).path) Keyword.get(config, :base_url, Pleroma.Web.base_url()) <> "/proxy/#{sig64}/#{base64}/#{filename}" |