From 6fcabec7b59c13ee7be3ae1d34ad77dd3cc38c42 Mon Sep 17 00:00:00 2001 From: Kent Delante Date: Thu, 22 Oct 2026 18:56:45 +0800 Subject: [PATCH] fix(versions): empty array for external shares Signed-off-by: Kent Delante This prevents $this->rootFolder->getUserFolder from being called, which throws a NoUserException down the stack when a file is created or modified in a folder from an external share. --- apps/files_versions/lib/Versions/LegacyVersionsBackend.php | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/apps/files_versions/lib/Versions/LegacyVersionsBackend.php b/apps/files_versions/lib/Versions/LegacyVersionsBackend.php index f80e5bd14a46d..900663e54be1e 100644 --- a/apps/files_versions/lib/Versions/LegacyVersionsBackend.php +++ b/apps/files_versions/lib/Versions/LegacyVersionsBackend.php @@ -12,6 +12,7 @@ use Exception; use OC\Files\View; use OCA\DAV\Connector\Sabre\Exception\Forbidden; +use OCA\Files_Sharing\External\Storage as ExternalShareStorage; use OCA\Files_Versions\Db\VersionEntity; use OCA\Files_Versions\Db\VersionsMapper; use OCA\Files_Versions\Storage; @@ -74,6 +75,10 @@ public function getVersionsForFile(IUser $user, FileInfo $file): array { if (!$file) { throw new NotFoundException('version file not found for share owner'); } + } elseif ($storage->instanceOfStorage(ExternalShareStorage::class)) { + $this->logger->info('Version files not available for external shares'); + + return []; } else { $userFolder = $this->rootFolder->getUserFolder($user->getUID()); }