diff options
author | lain <lain@soykaf.club> | 2020-07-08 13:23:07 +0200 |
---|---|---|
committer | lain <lain@soykaf.club> | 2020-07-08 13:23:07 +0200 |
commit | 7d0e2b3fdd001b45741d97ee9c7833a69d6fb5ef (patch) | |
tree | dc88ef36e04c083bc3c34255092677af1a81ce55 /lib/pleroma/upload.ex | |
parent | a6a12b241fbacd3ff35cd901190e62d14aaac3c2 (diff) | |
parent | 6335b32aa8f5c54cf5f09638189a77cad5785077 (diff) | |
download | pleroma-7d0e2b3fdd001b45741d97ee9c7833a69d6fb5ef.tar.gz |
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into follow-pipeline
Diffstat (limited to 'lib/pleroma/upload.ex')
-rw-r--r-- | lib/pleroma/upload.ex | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/lib/pleroma/upload.ex b/lib/pleroma/upload.ex index 797555bff..0fa6b89dc 100644 --- a/lib/pleroma/upload.ex +++ b/lib/pleroma/upload.ex @@ -63,6 +63,10 @@ defmodule Pleroma.Upload do with {:ok, upload} <- prepare_upload(upload, opts), upload = %__MODULE__{upload | path: upload.path || "#{upload.id}/#{upload.name}"}, {:ok, upload} <- Pleroma.Upload.Filter.filter(opts.filters, upload), + description = Map.get(opts, :description) || upload.name, + {_, true} <- + {:description_limit, + String.length(description) <= Pleroma.Config.get([:instance, :description_limit])}, {:ok, url_spec} <- Pleroma.Uploaders.Uploader.put_file(opts.uploader, upload) do {:ok, %{ @@ -75,9 +79,12 @@ defmodule Pleroma.Upload do "href" => url_from_spec(upload, opts.base_url, url_spec) } ], - "name" => Map.get(opts, :description) || upload.name + "name" => description }} else + {:description_limit, _} -> + {:error, :description_too_long} + {:error, error} -> Logger.error( "#{__MODULE__} store (using #{inspect(opts.uploader)}) failed: #{inspect(error)}" |