Browse Source

Merge branch 'fix/extract_first_external_url' into 'develop'

Fix Pleroma.HTML.extract_first_external_url/2

Closes #1451

See merge request pleroma/pleroma!2024
feature/compile_get
lain 4 years ago
parent
commit
a990374e80
2 changed files with 12 additions and 0 deletions
  1. +1
    -0
      lib/pleroma/html.ex
  2. +11
    -0
      test/html_test.exs

+ 1
- 0
lib/pleroma/html.ex View File

@@ -91,6 +91,7 @@ defmodule Pleroma.HTML do
Cachex.fetch!(:scrubber_cache, key, fn _key ->
result =
content
|> HtmlEntities.decode()
|> Floki.filter_out("a.mention,a.hashtag,a[rel~=\"tag\"]")
|> Floki.attribute("a", "href")
|> Enum.at(0)


+ 11
- 0
test/html_test.exs View File

@@ -228,5 +228,16 @@ defmodule Pleroma.HTMLTest do

assert url == "https://www.pixiv.net/member_illust.php?mode=medium&illust_id=72255140"
end

test "does not crash when there is an HTML entity in a link" do
user = insert(:user)

{:ok, activity} =
CommonAPI.post(user, %{"status" => "\"http://cofe.com/?boomer=ok&foo=bar\""})

object = Object.normalize(activity)

assert {:ok, nil} = HTML.extract_first_external_url(object, object.data["content"])
end
end
end

Loading…
Cancel
Save