diff --git a/lib/DAV/WorkspacePlugin.php b/lib/DAV/WorkspacePlugin.php index 6f68aa8c5e1..79158947959 100644 --- a/lib/DAV/WorkspacePlugin.php +++ b/lib/DAV/WorkspacePlugin.php @@ -76,6 +76,12 @@ public function propFind(PropFind $propFind, INode $node) { return; } + // Only return the property for the parent node and ignore it for further in depth nodes + // Otherwise requesting parent with description files for all the children makes a huge performance impact for external storages children + if ($propFind->getDepth() !== $this->server->getHTTPDepth()) { + return; + } + $node = $node->getNode(); try { $file = $this->workspaceService->getFile($node); @@ -83,7 +89,6 @@ public function propFind(PropFind $propFind, INode $node) { $file = null; } - // Only return the property for the parent node and ignore it for further in depth nodes $propFind->handle(self::WORKSPACE_PROPERTY, function () use ($file) { $cachedContent = ''; if ($file instanceof File) {