diff options
author | Haelwenn (lanodan) Monnier <contact@hacktivis.me> | 2023-08-02 11:00:18 +0200 |
---|---|---|
committer | Mark Felder <feld@feld.me> | 2024-06-12 15:18:47 -0400 |
commit | 66ac2e9b81a46b38c9ab9ba793c36987d3171911 (patch) | |
tree | 6e7ce65602421c011c4fbe0bb42d5207e2120d64 /lib | |
parent | 3e7f05d0b131f062d2d254484cb732e651585cb6 (diff) | |
download | pleroma-66ac2e9b81a46b38c9ab9ba793c36987d3171911.tar.gz pleroma-66ac2e9b81a46b38c9ab9ba793c36987d3171911.zip |
Upload.base_url: Don't pass nil to Path.join(), don't return nil
Diffstat (limited to 'lib')
-rw-r--r-- | lib/pleroma/upload.ex | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/lib/pleroma/upload.ex b/lib/pleroma/upload.ex index 35c7c02a5..b0aef2592 100644 --- a/lib/pleroma/upload.ex +++ b/lib/pleroma/upload.ex @@ -249,14 +249,16 @@ defmodule Pleroma.Upload do defp url_from_spec(_upload, _base_url, {:url, url}), do: url + @spec base_url() :: binary def base_url do uploader = @config_impl.get([Pleroma.Upload, :uploader]) - upload_base_url = @config_impl.get([Pleroma.Upload, :base_url]) + upload_fallback_url = Pleroma.Web.Endpoint.url() <> "/media/" + upload_base_url = @config_impl.get([Pleroma.Upload, :base_url]) || upload_fallback_url public_endpoint = @config_impl.get([uploader, :public_endpoint]) case uploader do Pleroma.Uploaders.Local -> - upload_base_url || Pleroma.Web.Endpoint.url() <> "/media/" + upload_base_url Pleroma.Uploaders.S3 -> bucket = @config_impl.get([Pleroma.Uploaders.S3, :bucket]) @@ -268,11 +270,14 @@ defmodule Pleroma.Upload do !is_nil(truncated_namespace) -> truncated_namespace - !is_nil(namespace) -> + !is_nil(namespace) and !is_nil(bucket) -> namespace <> ":" <> bucket - true -> + !is_nil(bucket) -> bucket + + true -> + "" end if public_endpoint do @@ -285,7 +290,7 @@ defmodule Pleroma.Upload do @config_impl.get([Pleroma.Uploaders.IPFS, :get_gateway_url]) _ -> - public_endpoint || upload_base_url || Pleroma.Web.Endpoint.url() <> "/media/" + public_endpoint || upload_base_url end end end |