diff --git a/lib/DAV/WorkspacePlugin.php b/lib/DAV/WorkspacePlugin.php index 2967833f688..ecbec3f59a8 100644 --- a/lib/DAV/WorkspacePlugin.php +++ b/lib/DAV/WorkspacePlugin.php @@ -31,9 +31,12 @@ use OCA\DAV\Files\FilesHome; use OCA\Text\AppInfo\Application; use OCA\Text\Service\WorkspaceService; +use OCP\Files\GenericFileException; use OCP\Files\IRootFolder; +use OCP\Files\NotPermittedException; use OCP\Files\StorageNotAvailableException; use OCP\IConfig; +use OCP\Lock\LockedException; use Sabre\DAV\INode; use Sabre\DAV\PropFind; use Sabre\DAV\Server; @@ -115,9 +118,13 @@ public function propFind(PropFind $propFind, INode $node) { // Only return the property for the parent node and ignore it for further in depth nodes $propFind->handle(self::WORKSPACE_PROPERTY, function () use ($file) { - if ($file instanceof File) { - return $file->getContent(); + try { + if ($file instanceof File) { + return $file->getContent(); + } + } catch (GenericFileException|NotPermittedException|LockedException) { } + return ''; }); $propFind->handle(self::WORKSPACE_FILE_PROPERTY, function () use ($file) {