diff --git a/lib/service/rich_media/favicon.ex b/lib/service/rich_media/favicon.ex index 12768b2de..ddbbb2691 100644 --- a/lib/service/rich_media/favicon.ex +++ b/lib/service/rich_media/favicon.ex @@ -60,12 +60,16 @@ defmodule Mobilizon.Service.RichMedia.Favicon do uri = URI.parse(url) cond do - is_nil(image_uri.host) -> "#{uri.scheme}://#{uri.host}#{path}" + is_nil(image_uri.host) -> "#{uri.scheme}://#{uri.host}#{correct_path(path)}" is_nil(image_uri.scheme) -> "#{uri.scheme}:#{path}" true -> path end end + # Sometimes paths have "/" in front, sometimes not + defp correct_path("/" <> _ = path), do: path + defp correct_path(path), do: "/#{path}" + @spec find_favicon_link_tag(String.t()) :: {:ok, tuple()} | {:error, any()} defp find_favicon_link_tag(html) do with {:ok, html} <- Floki.parse_document(html),