Pārlūkot izejas kodu

MediaProxy: parse filename from content-disposition for non-whitelisted types

tags/v1.1.4
rinpatch pirms 5 gadiem
vecāks
revīzija
958227d556
1 mainītis faili ar 19 papildinājumiem un 1 dzēšanām
  1. +19
    -1
      lib/pleroma/reverse_proxy.ex

+ 19
- 1
lib/pleroma/reverse_proxy.ex Parādīt failu

@@ -311,7 +311,25 @@ defmodule Pleroma.ReverseProxy do
end

if attachment? do
disposition = "attachment; filename=" <> Keyword.get(opts, :attachment_name, "attachment")
name =
try do
{{"content-disposition", content_disposition_string}, _} =
List.keytake(headers, "content-disposition", 0)

[name] =
Regex.run(
~r/filename=\"(.*)\"/u,
content_disposition_string || "",
capture: :all_but_first
)

name
rescue
MatchError -> Keyword.get(opts, :attachment_name, "attachment")
end

disposition = "attachment; filename=" <> name

List.keystore(headers, "content-disposition", 0, {"content-disposition", disposition})
else
headers


Notiek ielāde…
Atcelt
Saglabāt