aboutsummaryrefslogtreecommitdiffstats
path: root/lib/files/cache/upgrade.php
diff options
context:
space:
mode:
Diffstat (limited to 'lib/files/cache/upgrade.php')
-rw-r--r--lib/files/cache/upgrade.php24
1 files changed, 15 insertions, 9 deletions
diff --git a/lib/files/cache/upgrade.php b/lib/files/cache/upgrade.php
index 1032e0a844c..cd9a9e91a8c 100644
--- a/lib/files/cache/upgrade.php
+++ b/lib/files/cache/upgrade.php
@@ -43,15 +43,21 @@ class Upgrade {
$data = $this->getNewData($row);
$this->insert($data);
- $children = $this->legacy->getChildren($data['id']);
- foreach ($children as $child) {
- if ($mode == Scanner::SCAN_SHALLOW) {
- $childData = $this->getNewData($child);
- \OC_Hook::emit('\OC\Files\Cache\Upgrade', 'migrate_path', $child['path']);
- $this->insert($childData);
- } else {
- $this->upgradePath($child['path']);
- }
+ $this->upgradeChilds($data['id'], $mode);
+ }
+ }
+
+ /**
+ * @param int $id
+ */
+ function upgradeChilds($id, $mode = Scanner::SCAN_RECURSIVE) {
+ $children = $this->legacy->getChildren($id);
+ foreach ($children as $child) {
+ $childData = $this->getNewData($child);
+ \OC_Hook::emit('\OC\Files\Cache\Upgrade', 'migrate_path', $child['path']);
+ $this->insert($childData);
+ if ($mode == Scanner::SCAN_RECURSIVE) {
+ $this->upgradeChilds($child['id']);
}
}
}