commit: df95118c819ae15f0de43519f2f9f9753ac60ec2
parent: 125d934bc6d8121f600e7fde9aae0a767f6aa66e
Author: lain <lain@soykaf.club>
Date: Sat, 19 May 2018 11:27:14 +0200
Fix linking problem.
Diffstat:
2 files changed, 8 insertions(+), 0 deletions(-)
diff --git a/lib/pleroma/formatter.ex b/lib/pleroma/formatter.ex
@@ -160,6 +160,7 @@ defmodule Pleroma.Formatter do
links =
Regex.scan(@link_regex, text)
|> Enum.map(fn [url] -> {Ecto.UUID.generate(), url} end)
+ |> Enum.sort_by(fn ({_, url}) -> -String.length(url) end)
uuid_text =
links
diff --git a/test/formatter_test.exs b/test/formatter_test.exs
@@ -78,6 +78,13 @@ defmodule Pleroma.FormatterTest do
"<a href=\"https://en.wikipedia.org/wiki/Duff's_device\">https://en.wikipedia.org/wiki/Duff's_device</a>"
assert Formatter.add_links({[], text}) |> Formatter.finalize() == expected
+
+ text = "https://pleroma.com https://pleroma.com/sucks"
+
+ expected =
+ "<a href=\"https://pleroma.com\">https://pleroma.com</a> <a href=\"https://pleroma.com/sucks\">https://pleroma.com/sucks</a>"
+
+ assert Formatter.add_links({[], text}) |> Formatter.finalize() == expected
end
end