summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorHaelwenn (lanodan) Monnier <contact@hacktivis.me>2018-09-21 12:43:35 +0200
committerHaelwenn (lanodan) Monnier <contact@hacktivis.me>2018-09-27 20:00:46 +0200
commita4abb124eab7a03d8670c545cdbe029baad1c5f1 (patch)
treeea88303c54f91e8ec77cd414cd2f272bfdf4248b /lib
parent523757be52749b97ffcfad3d06ab6d0c0e2f8aab (diff)
downloadpleroma-a4abb124eab7a03d8670c545cdbe029baad1c5f1.tar.gz
pleroma-a4abb124eab7a03d8670c545cdbe029baad1c5f1.zip
[Pleroma.Web.ActivityPub.Transmogrifier]: Fix when inReplyTo is a inlined post [kroeg]
Diffstat (limited to 'lib')
-rw-r--r--lib/pleroma/web/activity_pub/transmogrifier.ex13
1 files changed, 11 insertions, 2 deletions
diff --git a/lib/pleroma/web/activity_pub/transmogrifier.ex b/lib/pleroma/web/activity_pub/transmogrifier.ex
index 48c3aec97..3af3efbb3 100644
--- a/lib/pleroma/web/activity_pub/transmogrifier.ex
+++ b/lib/pleroma/web/activity_pub/transmogrifier.ex
@@ -96,8 +96,17 @@ defmodule Pleroma.Web.ActivityPub.Transmogrifier do
object
end
- def fix_in_reply_to(%{"inReplyTo" => in_reply_to_id} = object)
- when not is_nil(in_reply_to_id) do
+ def fix_in_reply_to(%{"inReplyTo" => in_reply_to} = object)
+ when not is_nil(in_reply_to) do
+ in_reply_to_id =
+ if is_bitstring(in_reply_to) do
+ in_reply_to
+ else
+ if is_map(in_reply_to) && in_reply_to["id"] do
+ in_reply_to["id"]
+ end
+ end
+
case ActivityPub.fetch_object_from_id(in_reply_to_id) do
{:ok, replied_object} ->
with %Activity{} = activity <-