diff options
author | Robin Appelman <robin@icewind.nl> | 2024-12-05 17:42:47 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-12-05 17:42:47 +0100 |
commit | 41c53648ad18e3a94b6ba18ad0e6c7c09a520bd9 (patch) | |
tree | 4b02e8da7a4032ee1a53f8caf29c1608c9a91ab3 /lib | |
parent | c9073f7ab7be631e90be77b46d51369d3dbbf5fe (diff) | |
parent | 0bc478de2ca2745d85e30c7253f383e87e063e67 (diff) | |
download | nextcloud-server-41c53648ad18e3a94b6ba18ad0e6c7c09a520bd9.tar.gz nextcloud-server-41c53648ad18e3a94b6ba18ad0e6c7c09a520bd9.zip |
Merge pull request #49262 from nextcloud/move-from-encryption-no-opt
fix: don't do same-storage move optimization with encryption wrappers
Diffstat (limited to 'lib')
-rw-r--r-- | lib/private/Files/Storage/Common.php | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/private/Files/Storage/Common.php b/lib/private/Files/Storage/Common.php index 036ccad23a5..ca0e38774c8 100644 --- a/lib/private/Files/Storage/Common.php +++ b/lib/private/Files/Storage/Common.php @@ -16,6 +16,7 @@ use OC\Files\Cache\Watcher; use OC\Files\FilenameValidator; use OC\Files\Filesystem; use OC\Files\ObjectStore\ObjectStoreStorage; +use OC\Files\Storage\Wrapper\Encryption; use OC\Files\Storage\Wrapper\Jail; use OC\Files\Storage\Wrapper\Wrapper; use OCP\Files\Cache\ICache; @@ -547,7 +548,10 @@ abstract class Common implements Storage, ILockingStorage, IWriteStreamStorage, } public function moveFromStorage(IStorage $sourceStorage, string $sourceInternalPath, string $targetInternalPath): bool { - if ($this->isSameStorage($sourceStorage)) { + if ( + !$sourceStorage->instanceOfStorage(Encryption::class) && + $this->isSameStorage($sourceStorage) + ) { // resolve any jailed paths while ($sourceStorage->instanceOfStorage(Jail::class)) { /** |