diff --git a/src/Model/ItemURI.php b/src/Model/ItemURI.php index 7f05786c8e..6421b2dbd9 100644 --- a/src/Model/ItemURI.php +++ b/src/Model/ItemURI.php @@ -31,10 +31,10 @@ class ItemURI * * @param array $fields Item-uri fields * - * @return integer item-uri id + * @return int|null item-uri id * @throws \Exception */ - public static function insert($fields) + public static function insert(array $fields) { // If the URI gets too long we only take the first parts and hope for best $uri = substr($fields['uri'], 0, 255); diff --git a/src/Protocol/ActivityPub/Processor.php b/src/Protocol/ActivityPub/Processor.php index 088a10e908..f60eea7122 100644 --- a/src/Protocol/ActivityPub/Processor.php +++ b/src/Protocol/ActivityPub/Processor.php @@ -327,6 +327,10 @@ class Processor $item['guid'] = $activity['diaspora:guid'] ?: $guid; $item['uri-id'] = ItemURI::insert(['uri' => $item['uri'], 'guid' => $item['guid']]); + if (empty($item['uri-id'])) { + Logger::warning('Unable to get a uri-id for an item uri', ['uri' => $item['uri'], 'guid' => $item['guid']]); + return []; + } $item = self::processContent($activity, $item); if (empty($item)) {