Merge pull request #58414 from nextcloud/fix/transfer-ownership-service/remove-groupfolders-size

fix(TransferOwnershipService): Remove groupfolders size
This commit is contained in:
Kate 2026-02-20 06:17:21 +01:00 committed by GitHub
commit 1285c8cd04
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 24 additions and 0 deletions

View file

@ -17,6 +17,7 @@ use OC\User\NoUserException;
use OCA\Encryption\Util;
use OCA\Files\Exception\TransferOwnershipException;
use OCA\Files_External\Config\ConfigAdapter;
use OCA\GroupFolders\Mount\GroupMountPoint;
use OCP\Encryption\IManager as IEncryptionManager;
use OCP\EventDispatcher\IEventDispatcher;
use OCP\Files\Config\IHomeMountProvider;
@ -169,6 +170,28 @@ class OwnershipTransferService {
);
$sizeDifference = $sourceSize - $view->getFileInfo($finalTarget)->getSize();
// Files in Team folders are not transferred, so their size needs to be subtracted to avoid warnings about size differences
$mounts = Server::get(IMountManager::class)->getAll();
foreach ($mounts as $mount) {
if (!$mount instanceof GroupMountPoint || !str_starts_with($mount->getMountPoint(), '/' . $sourcePath . '/')) {
continue;
}
$storage = $mount->getStorage();
if ($storage === null) {
$output->writeln('Failed to get storage for mount: ' . $mount->getMountPoint());
continue;
}
$rootCacheEntry = $storage->getCache()->get('');
if ($rootCacheEntry === false) {
$output->writeln('Failed to get root cache entry for storage: ' . $mount->getMountPoint());
continue;
}
$sizeDifference -= $rootCacheEntry->getSize();
}
// transfer the incoming shares
$sourceShares = $this->collectIncomingShares(
$sourceUid,

View file

@ -114,6 +114,7 @@
<referencedClass name="OCA\TwoFactorNextcloudNotification\Controller\APIController"/>
<referencedClass name="OCA\GlobalSiteSelector\Service\SlaveService"/>
<referencedClass name="OCA\Guests\UserBackend"/>
<referencedClass name="OCA\GroupFolders\Mount\GroupMountPoint"/>
</errorLevel>
</UndefinedClass>
<UndefinedFunction>