Merge branch 'fix/update-reports-old-format' into 'develop'
authorfeld <feld@feld.me>
Mon, 25 Nov 2019 13:29:22 +0000 (13:29 +0000)
committerfeld <feld@feld.me>
Mon, 25 Nov 2019 13:29:22 +0000 (13:29 +0000)
Admin API: Fix error when trying to update reports in the "old" format

See merge request pleroma/pleroma!1986

CHANGELOG.md
lib/pleroma/web/activity_pub/utils.ex

index 8db8039b842efdbd29c772aec076bab6e8aa1029..db6d45c6167df7454d6bd126b28b3d5ba4e6813d 100644 (file)
@@ -81,6 +81,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
 
 - Mastodon API: Fix private and direct statuses not being filtered out from the public timeline for an authenticated user (`GET /api/v1/timelines/public`)
 - Mastodon API: Inability to get some local users by nickname in `/api/v1/accounts/:id_or_nickname`
+- Admin API: Error when trying to update reports in the "old" format
 </details>
 
 ## [1.1.6] - 2019-11-19
index c456623596b372c91084c06adde6ffb259592579..01aacbde3fbac90d68f08d12ed0497383d4ceb22 100644 (file)
@@ -903,7 +903,13 @@ defmodule Pleroma.Web.ActivityPub.Utils do
 
   def strip_report_status_data(activity) do
     [actor | reported_activities] = activity.data["object"]
-    stripped_activities = Enum.map(reported_activities, & &1["id"])
+
+    stripped_activities =
+      Enum.map(reported_activities, fn
+        act when is_map(act) -> act["id"]
+        act when is_binary(act) -> act
+      end)
+
     new_data = put_in(activity.data, ["object"], [actor | stripped_activities])
 
     {:ok, %{activity | data: new_data}}