aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhref <href@random.sh>2018-11-13 23:41:33 +0100
committerhref <href@random.sh>2018-11-13 23:41:33 +0100
commitf52a1d1ec5d44eb882b7bebf4d3242737ff9701b (patch)
treed71a8fba4f6ac6da24fe389c1a0b472744a48b49
parent9b553a1087a3539280a4a085bcf7a79f29972f0a (diff)
downloadpleroma-f52a1d1ec5d44eb882b7bebf4d3242737ff9701b.tar.gz
media_proxy: use path only to retrieve filename
-rw-r--r--lib/pleroma/web/media_proxy/controller.ex2
-rw-r--r--lib/pleroma/web/media_proxy/media_proxy.ex2
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}"