diff --git a/src/Protocol/ActivityPub/Receiver.php b/src/Protocol/ActivityPub/Receiver.php index a410c35258..38ed993cf2 100644 --- a/src/Protocol/ActivityPub/Receiver.php +++ b/src/Protocol/ActivityPub/Receiver.php @@ -887,13 +887,13 @@ class Receiver } elseif (($object_data['object_type'] == 'as:Block') && in_array($object_data['object_object_type'], self::ACCOUNT_TYPES)) { ActivityPub\Processor::unblockAccount($object_data); - } elseif (in_array($object_data['object_type'], array_merge(self::ACTIVITY_TYPES, ['as:Announce'])) && - in_array($object_data['object_object_type'], array_merge(['as:Tombstone'], self::CONTENT_TYPES))) { - ActivityPub\Processor::undoActivity($object_data); } elseif (in_array($object_data['object_type'], array_merge(self::ACTIVITY_TYPES, ['as:Announce', 'as:Create', ''])) && empty($object_data['object_object_type'])) { // We cannot detect the target object. So we can ignore it. Queue::remove($object_data); + } elseif (in_array($object_data['object_type'], array_merge(self::ACTIVITY_TYPES, ['as:Announce'])) && + in_array($object_data['object_object_type'], array_merge(['as:Tombstone'], self::CONTENT_TYPES))) { + ActivityPub\Processor::undoActivity($object_data); } elseif (in_array($object_data['object_type'], ['as:Create']) && in_array($object_data['object_object_type'], ['pt:CacheFile'])) { // Unhandled Peertube activity