diff --git a/apps/dav/lib/SystemTag/SystemTagPlugin.php b/apps/dav/lib/SystemTag/SystemTagPlugin.php index eaf3a4d81438c..786461db65201 100644 --- a/apps/dav/lib/SystemTag/SystemTagPlugin.php +++ b/apps/dav/lib/SystemTag/SystemTagPlugin.php @@ -327,7 +327,22 @@ public function handleGetProperties( if ($node instanceof SystemTagObjectType) { $propFind->handle(self::OBJECTIDS_PROPERTYNAME, function () use ($node): SystemTagsObjectList { - return new SystemTagsObjectList(array_fill_keys($node->getObjectsIds(), $node->getName())); + $user = $this->userSession->getUser(); + if ($user === null) { + return new SystemTagsObjectList([]); + } + + $allIds = $node->getObjectsIds(); + $userFolder = $this->rootFolder->getUserFolder($user->getUID()); + $filteredIds = []; + foreach ($allIds as $id) { + if ($userFolder->getFirstNodeById((int)$id) !== null) { + $filteredIds[] = $id; + } + } + return new SystemTagsObjectList( + array_fill_keys($filteredIds, $node->getName()) + ); }); } }