Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/server.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoas Schilling <coding@schilljs.com>2017-04-06 15:10:01 +0300
committerGitHub <noreply@github.com>2017-04-06 15:10:01 +0300
commite5f51f2ee6a998b707542769882f878c235b09be (patch)
tree66899ac8298eef1110354a7066b3a87011cdd4da
parent02a47150dba4b7920ea80f8f7c9d9d494546b364 (diff)
parentd0a7e01baf7dcb2b4c400688e01a16078816cb76 (diff)
Merge pull request #4237 from nextcloud/backport-3781-log-spam-with-external-storages
[stable11] Also add the root of external storages to the file id list
-rw-r--r--apps/workflowengine/lib/Check/FileSystemTags.php18
1 files changed, 13 insertions, 5 deletions
diff --git a/apps/workflowengine/lib/Check/FileSystemTags.php b/apps/workflowengine/lib/Check/FileSystemTags.php
index e9b5a945967..4a2b87fd53e 100644
--- a/apps/workflowengine/lib/Check/FileSystemTags.php
+++ b/apps/workflowengine/lib/Check/FileSystemTags.php
@@ -23,6 +23,7 @@ namespace OCA\WorkflowEngine\Check;
use OCP\Files\Cache\ICache;
+use OCP\Files\IHomeStorage;
use OCP\Files\Storage\IStorage;
use OCP\IL10N;
use OCP\SystemTag\ISystemTagManager;
@@ -108,7 +109,7 @@ class FileSystemTags implements ICheck {
*/
protected function getSystemTags() {
$cache = $this->storage->getCache();
- $fileIds = $this->getFileIds($cache, $this->path);
+ $fileIds = $this->getFileIds($cache, $this->path, !$this->storage->instanceOfStorage(IHomeStorage::class));
$systemTags = [];
foreach ($fileIds as $i => $fileId) {
@@ -135,17 +136,19 @@ class FileSystemTags implements ICheck {
* Get the file ids of the given path and its parents
* @param ICache $cache
* @param string $path
+ * @param bool $isExternalStorage
* @return int[]
*/
- protected function getFileIds(ICache $cache, $path) {
+ protected function getFileIds(ICache $cache, $path, $isExternalStorage) {
$cacheId = $cache->getNumericStorageId();
if (isset($this->fileIds[$cacheId][$path])) {
return $this->fileIds[$cacheId][$path];
}
- if ($path !== dirname($path)) {
- $parentIds = $this->getFileIds($cache, dirname($path));
- } else {
+ $parentIds = [];
+ if ($path !== $this->dirname($path)) {
+ $parentIds = $this->getFileIds($cache, $this->dirname($path), $isExternalStorage);
+ } else if (!$isExternalStorage) {
return [];
}
@@ -158,4 +161,9 @@ class FileSystemTags implements ICheck {
return $parentIds;
}
+
+ protected function dirname($path) {
+ $dir = dirname($path);
+ return $dir === '.' ? '' : $dir;
+ }
}