diff options
author | Robin Appelman <robin@icewind.nl> | 2024-11-13 18:47:13 +0100 |
---|---|---|
committer | Robin Appelman <robin@icewind.nl> | 2024-11-13 18:47:13 +0100 |
commit | 0bc478de2ca2745d85e30c7253f383e87e063e67 (patch) | |
tree | fad28b314972261c7b5a527d15e4bb4410d16bf5 /lib | |
parent | 22e2419b2828c5866a32c9da43cbaa8c8a2898ea (diff) | |
download | nextcloud-server-0bc478de2ca2745d85e30c7253f383e87e063e67.tar.gz nextcloud-server-0bc478de2ca2745d85e30c7253f383e87e063e67.zip |
fix: don't do same-storage move optimization with encryption wrappersmove-from-encryption-no-opt
Signed-off-by: Robin Appelman <robin@icewind.nl>
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 334ca34294e..f915b8f5565 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; @@ -546,7 +547,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)) { /** |