summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/private/Files/Node/Folder.php7
1 files changed, 6 insertions, 1 deletions
diff --git a/lib/private/Files/Node/Folder.php b/lib/private/Files/Node/Folder.php
index b0569a24aa1..19f04048779 100644
--- a/lib/private/Files/Node/Folder.php
+++ b/lib/private/Files/Node/Folder.php
@@ -442,8 +442,13 @@ class Folder extends Node implements \OCP\Files\Folder {
}, $result));
return array_values(array_filter($files, function (Node $node) {
+ $cacheEntry = $node->getMountPoint()->getStorage()->getCache()->get($node->getId());
+ if (!$cacheEntry) {
+ return false;
+ }
$relative = $this->getRelativePath($node->getPath());
- return $relative !== null && $relative !== '/';
+ return $relative !== null && $relative !== '/'
+ && ($cacheEntry->getPermissions() & \OCP\Constants::PERMISSION_READ) === \OCP\Constants::PERMISSION_READ;
}));
}