From add86251b18a1a4bb71e3272083b94d226f33229 Mon Sep 17 00:00:00 2001 From: provokateurin Date: Thu, 19 Feb 2026 09:19:44 +0100 Subject: [PATCH] fix(Propagator): Also skip groupfolders versions and trash entries Signed-off-by: provokateurin --- lib/private/Files/Cache/Propagator.php | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/lib/private/Files/Cache/Propagator.php b/lib/private/Files/Cache/Propagator.php index 2b580686ba288..b63a41b91d99f 100644 --- a/lib/private/Files/Cache/Propagator.php +++ b/lib/private/Files/Cache/Propagator.php @@ -69,9 +69,14 @@ public function propagateChange($internalPath, $time, $sizeDifference = 0) { $storageId = $this->storage->getStorageCache()->getNumericId(); $parents = $this->getParents($internalPath); - if ($this->storage->instanceOfStorage(LocalRootStorage::class) && str_starts_with($internalPath, '__groupfolders')) { - // Remove '' and '__groupfolders' - $parents = array_slice($parents, 2); + if ($this->storage->instanceOfStorage(LocalRootStorage::class)) { + if (str_starts_with($internalPath, '__groupfolders/versions') || str_starts_with($internalPath, '__groupfolders/trash')) { + // Remove '', '__groupfolders' and '__groupfolders/versions' or '__groupfolders/trash' + $parents = array_slice($parents, 3); + } elseif (str_starts_with($internalPath, '__groupfolders')) { + // Remove '' and '__groupfolders' + $parents = array_slice($parents, 2); + } } if ($this->inBatch) {