Merge pull request #16598 from nextcloud/backport/16502/stable16
[stable16] Check the if we can actually access the storage cache for recent files
This commit is contained in:
commit
516588ff91
|
@ -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;
|
||||
}));
|
||||
}
|
||||
|
||||
|
|
|
@ -861,13 +861,15 @@ class FolderTest extends NodeTest {
|
|||
'storage_mtime' => $baseTime,
|
||||
'mtime' => $baseTime,
|
||||
'mimetype' => 'text/plain',
|
||||
'size' => 3
|
||||
'size' => 3,
|
||||
'permissions' => \OCP\Constants::PERMISSION_ALL
|
||||
]);
|
||||
$id2 = $cache->put('bar/foo/old.txt', [
|
||||
'storage_mtime' => $baseTime - 100,
|
||||
'mtime' => $baseTime - 100,
|
||||
'mimetype' => 'text/plain',
|
||||
'size' => 3
|
||||
'size' => 3,
|
||||
'permissions' => \OCP\Constants::PERMISSION_READ
|
||||
]);
|
||||
$cache->put('bar/asd/outside.txt', [
|
||||
'storage_mtime' => $baseTime,
|
||||
|
@ -879,7 +881,8 @@ class FolderTest extends NodeTest {
|
|||
'storage_mtime' => $baseTime - 600,
|
||||
'mtime' => $baseTime - 600,
|
||||
'mimetype' => 'text/plain',
|
||||
'size' => 3
|
||||
'size' => 3,
|
||||
'permissions' => \OCP\Constants::PERMISSION_ALL
|
||||
]);
|
||||
|
||||
$node = new \OC\Files\Node\Folder($root, $view, $folderPath, $folderInfo);
|
||||
|
@ -922,21 +925,24 @@ class FolderTest extends NodeTest {
|
|||
'storage_mtime' => $baseTime,
|
||||
'mtime' => $baseTime,
|
||||
'mimetype' => \OCP\Files\FileInfo::MIMETYPE_FOLDER,
|
||||
'size' => 3
|
||||
'size' => 3,
|
||||
'permissions' => 0
|
||||
]);
|
||||
$id2 = $cache->put('bar/foo/folder/bar.txt', [
|
||||
'storage_mtime' => $baseTime,
|
||||
'mtime' => $baseTime,
|
||||
'mimetype' => 'text/plain',
|
||||
'size' => 3,
|
||||
'parent' => $id1
|
||||
'parent' => $id1,
|
||||
'permissions' => \OCP\Constants::PERMISSION_ALL
|
||||
]);
|
||||
$id3 = $cache->put('bar/foo/folder/asd.txt', [
|
||||
'storage_mtime' => $baseTime - 100,
|
||||
'mtime' => $baseTime - 100,
|
||||
'mimetype' => 'text/plain',
|
||||
'size' => 3,
|
||||
'parent' => $id1
|
||||
'parent' => $id1,
|
||||
'permissions' => \OCP\Constants::PERMISSION_ALL
|
||||
]);
|
||||
|
||||
$node = new \OC\Files\Node\Folder($root, $view, $folderPath, $folderInfo);
|
||||
|
@ -985,7 +991,8 @@ class FolderTest extends NodeTest {
|
|||
'storage_mtime' => $baseTime,
|
||||
'mtime' => $baseTime,
|
||||
'mimetype' => 'text/plain',
|
||||
'size' => 3
|
||||
'size' => 3,
|
||||
'permissions' => \OCP\Constants::PERMISSION_ALL
|
||||
]);
|
||||
$cache->put('outside.txt', [
|
||||
'storage_mtime' => $baseTime - 100,
|
||||
|
|
Loading…
Reference in New Issue