summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorRobin Appelman <icewind@owncloud.com>2014-02-19 10:46:02 +0100
committerRobin Appelman <icewind@owncloud.com>2014-02-19 10:46:02 +0100
commit1331de554c0ab619df1826424e502803535481e2 (patch)
tree3b511eb10bba476bbf89b6b290ad8874d956830b /lib
parente517e642befa119b77521a2e15571ee6932046ad (diff)
downloadnextcloud-server-1331de554c0ab619df1826424e502803535481e2.tar.gz
nextcloud-server-1331de554c0ab619df1826424e502803535481e2.zip
Reuse the folder id in View->getFolderContents
Diffstat (limited to 'lib')
-rw-r--r--lib/private/files/cache/cache.php7
-rw-r--r--lib/private/files/view.php5
2 files changed, 8 insertions, 4 deletions
diff --git a/lib/private/files/cache/cache.php b/lib/private/files/cache/cache.php
index 4cab4619149..dbdc42ecc48 100644
--- a/lib/private/files/cache/cache.php
+++ b/lib/private/files/cache/cache.php
@@ -162,10 +162,13 @@ class Cache {
* get the metadata of all files stored in $folder
*
* @param string $folder
+ * @param int $fileId (optional) the file id of the folder
* @return array
*/
- public function getFolderContents($folder) {
- $fileId = $this->getId($folder);
+ public function getFolderContents($folder, $fileId = null) {
+ if (is_null($fileId)) {
+ $fileId = $this->getId($folder);
+ }
if ($fileId > -1) {
$sql = 'SELECT `fileid`, `storage`, `path`, `parent`, `name`, `mimetype`, `mimepart`, `size`, `mtime`,
`storage_mtime`, `encrypted`, `unencrypted_size`, `etag`
diff --git a/lib/private/files/view.php b/lib/private/files/view.php
index 530aa8f7514..3fbc9080d1f 100644
--- a/lib/private/files/view.php
+++ b/lib/private/files/view.php
@@ -880,12 +880,13 @@ class View {
$watcher->checkUpdate($internalPath);
}
+ $folderId = $cache->getId($internalPath);
$files = array();
- $contents = $cache->getFolderContents($internalPath); //TODO: mimetype_filter
+ $contents = $cache->getFolderContents($internalPath, $folderId); //TODO: mimetype_filter
foreach ($contents as $content) {
$files[] = new FileInfo($path . '/' . $content['name'], $storage, $content['path'], $content);
}
- $permissions = $permissionsCache->getDirectoryPermissions($cache->getId($internalPath), $user);
+ $permissions = $permissionsCache->getDirectoryPermissions($folderId, $user);
$ids = array();
foreach ($files as $i => $file) {