UploadedMedia: Add missing disposition_type to Content-Disposition

Set it to `inline` because the vast majority of what's sent is multimedia
content while `attachment` would have the side-effect of triggering a
download dialog.

Closes: https://git.pleroma.social/pleroma/pleroma/-/issues/3114
This commit is contained in:
Haelwenn (lanodan) Monnier 2023-04-17 21:07:08 +02:00
parent 3867b52aef
commit 8f0f58e28b
3 changed files with 3 additions and 2 deletions

1
changelog.d/3873.fix Normal file
View File

@ -0,0 +1 @@
UploadedMedia: Add missing disposition_type to Content-Disposition

View File

@ -37,7 +37,7 @@ def call(%{request_path: <<"/", @path, "/", file::binary>>} = conn, opts) do
%{query_params: %{"name" => name}} = conn -> %{query_params: %{"name" => name}} = conn ->
name = String.replace(name, "\"", "\\\"") name = String.replace(name, "\"", "\\\"")
put_resp_header(conn, "content-disposition", "filename=\"#{name}\"") put_resp_header(conn, "content-disposition", "inline; filename=\"#{name}\"")
conn -> conn ->
conn conn

View File

@ -37,7 +37,7 @@ test "sends Content-Disposition header when name param is set", %{
assert Enum.any?( assert Enum.any?(
conn.resp_headers, conn.resp_headers,
&(&1 == {"content-disposition", "filename=\"\\\"cofe\\\".gif\""}) &(&1 == {"content-disposition", "inline; filename=\"\\\"cofe\\\".gif\""})
) )
end end
end end