diff options
author | Roger Braun <roger@rogerbraun.net> | 2017-08-09 15:21:34 +0200 |
---|---|---|
committer | Roger Braun <roger@rogerbraun.net> | 2017-08-09 15:21:34 +0200 |
commit | 9c35456d77cec6e37c18b78a20719a7dac865532 (patch) | |
tree | e954a301670394cf22125773f532194684b04f83 | |
parent | 9fd86402028fbf44fd417c2ee9017ca04623dc72 (diff) | |
download | pleroma-9c35456d77cec6e37c18b78a20719a7dac865532.tar.gz |
URI encode filenames...
-rw-r--r-- | lib/pleroma/upload.ex | 4 | ||||
-rw-r--r-- | test/upload_test.exs | 5 |
2 files changed, 5 insertions, 4 deletions
diff --git a/lib/pleroma/upload.ex b/lib/pleroma/upload.ex index 9275eff87..5691c6845 100644 --- a/lib/pleroma/upload.ex +++ b/lib/pleroma/upload.ex @@ -13,7 +13,7 @@ defmodule Pleroma.Upload do "url" => [%{ "type" => "Link", "mediaType" => file.content_type, - "href" => url_for(Path.join(uuid, file.filename)) + "href" => url_for(Path.join(uuid, URI.encode(file.filename))) }], "name" => file.filename, "uuid" => uuid @@ -38,7 +38,7 @@ defmodule Pleroma.Upload do "url" => [%{ "type" => "Link", "mediaType" => content_type, - "href" => url_for(Path.join(uuid, filename)) + "href" => url_for(Path.join(uuid, URI.encode(filename))) }], "name" => filename, "uuid" => uuid diff --git a/test/upload_test.exs b/test/upload_test.exs index e8c954341..d29a1f2ba 100644 --- a/test/upload_test.exs +++ b/test/upload_test.exs @@ -4,9 +4,10 @@ defmodule Pleroma.UploadTest do describe "Storing a file" do test "copies the file to the configured folder" do - file = %Plug.Upload{content_type: "image/jpg", path: Path.absname("test/fixtures/image.jpg"), filename: "an_image.jpg"} + file = %Plug.Upload{content_type: "image/jpg", path: Path.absname("test/fixtures/image.jpg"), filename: "an image.jpg"} data = Upload.store(file) - assert data["name"] == "an_image.jpg" + assert data["name"] == "an image.jpg" + assert List.first(data["url"])["href"] == "http://localhost:4001/media/#{data["uuid"]}/an%20image.jpg" end end end |