diff options
author | Haelwenn (lanodan) Monnier <contact@hacktivis.me> | 2020-09-11 11:22:50 +0200 |
---|---|---|
committer | Haelwenn (lanodan) Monnier <contact@hacktivis.me> | 2020-09-11 11:37:46 +0200 |
commit | dbc013f24c3885960714425f201e372335d22345 (patch) | |
tree | ea20b1b61be4b18d737d7ec148e5d831d99dd092 /lib | |
parent | 6316350918d1f55167fa384d55f385ff2c93e6bb (diff) | |
download | pleroma-dbc013f24c3885960714425f201e372335d22345.tar.gz |
instance: Handle not getting a favicon
Diffstat (limited to 'lib')
-rw-r--r-- | lib/pleroma/instances/instance.ex | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/lib/pleroma/instances/instance.ex b/lib/pleroma/instances/instance.ex index 8bf53c090..6948651c7 100644 --- a/lib/pleroma/instances/instance.ex +++ b/lib/pleroma/instances/instance.ex @@ -159,13 +159,11 @@ defmodule Pleroma.Instances.Instance do Pleroma.HTTP.get(to_string(instance_uri), [{"accept", "text/html"}], adapter: [pool: :media] ), - favicon_rel <- - html - |> Floki.parse_document!() - |> Floki.attribute("link[rel=icon]", "href") - |> List.first(), - favicon <- URI.merge(instance_uri, favicon_rel) |> to_string(), - true <- is_binary(favicon) do + {_, [favicon_rel | _]} when is_binary(favicon_rel) <- + {:parse, + html |> Floki.parse_document!() |> Floki.attribute("link[rel=icon]", "href")}, + {_, favicon} when is_binary(favicon) <- + {:merge, URI.merge(instance_uri, favicon_rel) |> to_string()} do favicon else _ -> nil |