diff options
author | tusooa <tusooa@kazv.moe> | 2022-07-24 21:36:43 +0000 |
---|---|---|
committer | tusooa <tusooa@kazv.moe> | 2022-07-24 21:36:43 +0000 |
commit | d39f803bddb04a4c0a9e0742a437fd07f461c615 (patch) | |
tree | 88b601406c4b0d4ecedd077674a803549546c8db /lib | |
parent | 301ce5bc627d91b21c33af73eeb266025cd14728 (diff) | |
parent | 388bbc4978a97eb82554c6d8ebc8bb6c9d429080 (diff) | |
download | pleroma-d39f803bddb04a4c0a9e0742a437fd07f461c615.tar.gz pleroma-d39f803bddb04a4c0a9e0742a437fd07f461c615.zip |
Merge branch 'fix/emoji-react-qualification' into 'develop'
EmojiReactValidator: fix emoji qualification
See merge request pleroma/pleroma!3708
Diffstat (limited to 'lib')
-rw-r--r-- | lib/pleroma/web/activity_pub/object_validators/emoji_react_validator.ex | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/lib/pleroma/web/activity_pub/object_validators/emoji_react_validator.ex b/lib/pleroma/web/activity_pub/object_validators/emoji_react_validator.ex index ed072b888..2eb4f6842 100644 --- a/lib/pleroma/web/activity_pub/object_validators/emoji_react_validator.ex +++ b/lib/pleroma/web/activity_pub/object_validators/emoji_react_validator.ex @@ -49,6 +49,7 @@ defmodule Pleroma.Web.ActivityPub.ObjectValidators.EmojiReactValidator do defp fix(data) do data = data + |> fix_emoji_qualification() |> CommonFixes.fix_actor() |> CommonFixes.fix_activity_addressing() @@ -61,6 +62,24 @@ defmodule Pleroma.Web.ActivityPub.ObjectValidators.EmojiReactValidator do end end + defp fix_emoji_qualification(%{"content" => emoji} = data) do + # Emoji variation sequence + new_emoji = emoji <> "\uFE0F" + + cond do + Pleroma.Emoji.is_unicode_emoji?(emoji) -> + data + + Pleroma.Emoji.is_unicode_emoji?(new_emoji) -> + data |> Map.put("content", new_emoji) + + true -> + data + end + end + + defp fix_emoji_qualification(data), do: data + defp validate_emoji(cng) do content = get_field(cng, :content) |