Add delete to TwAPI representer correctly.
[akkoma] / lib / pleroma / web / activity_pub / activity_pub.ex
index 146888c98eab2ea68ea866f32ad419cf5c5f7033..db1302738d7276176d297fcae3a9154df5ea9c99 100644 (file)
@@ -83,11 +83,11 @@ defmodule Pleroma.Web.ActivityPub.ActivityPub do
       "object" => id,
       "to" => [user.follower_address, "https://www.w3.org/ns/activitystreams#Public"]
     }
-    with {:ok, activity} <- insert(data, local),
+    with Repo.delete(object),
+         Repo.delete_all(Activity.all_non_create_by_object_ap_id_q(id)),
+         Repo.delete_all(Activity.all_by_object_ap_id_q(id)),
+         {:ok, activity} <- insert(data, local),
          :ok <- maybe_federate(activity) do
-      Repo.delete(object)
-      Repo.delete_all(Activity.all_non_create_by_object_ap_id_q(id))
-      Repo.delete_all(Activity.all_by_object_ap_id_q(id))
       {:ok, activity}
     end
   end