diff options
author | Joas Schilling <213943+nickvergessen@users.noreply.github.com> | 2024-04-24 14:05:16 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-04-24 14:05:16 +0200 |
commit | 11a19adc4891ecdf4cab570f26bc6a14dbfc45d0 (patch) | |
tree | 03dd41fac4bd390185d9406a835ec1d20727ba71 | |
parent | 646cba4835a668ddd416a57de21a7334e55e1f68 (diff) | |
parent | 2986019408aa1b5861d4a558015692994bff6cfc (diff) | |
download | nextcloud-server-stable21.tar.gz nextcloud-server-stable21.zip |
Merge pull request #45012 from nextcloud/backport/45010/stable21stable21
[stable21] fix(files): Also skip cross storage move with access control
-rw-r--r-- | lib/private/Files/Storage/Local.php | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/private/Files/Storage/Local.php b/lib/private/Files/Storage/Local.php index 22c9418d19f..cb6672e35a0 100644 --- a/lib/private/Files/Storage/Local.php +++ b/lib/private/Files/Storage/Local.php @@ -528,7 +528,10 @@ class Local extends \OC\Files\Storage\Common { // Don't treat ACLStorageWrapper like local storage where copy can be done directly. // Instead use the slower recursive copying in php from Common::copyFromStorage with // more permissions checks. - if ($sourceStorage->instanceOfStorage(Local::class) && !$sourceStorage->instanceOfStorage('OCA\GroupFolders\ACL\ACLStorageWrapper')) { + /** @psalm-suppress UndefinedClass */ + if ($sourceStorage->instanceOfStorage(Local::class) + && !$sourceStorage->instanceOfStorage('OCA\GroupFolders\ACL\ACLStorageWrapper') + && !$sourceStorage->instanceOfStorage(\OCA\FilesAccessControl\StorageWrapper::class)) { if ($sourceStorage->instanceOfStorage(Jail::class)) { /** * @var \OC\Files\Storage\Wrapper\Jail $sourceStorage |