diff --git a/apps/files_sharing/tests/SharedStorageTest.php b/apps/files_sharing/tests/SharedStorageTest.php index 195016c47d..7d007cb641 100644 --- a/apps/files_sharing/tests/SharedStorageTest.php +++ b/apps/files_sharing/tests/SharedStorageTest.php @@ -207,11 +207,10 @@ class SharedStorageTest extends TestCase { $this->assertTrue(\OC\Files\Filesystem::is_dir($this->folder)); // for the share root we expect: - // the read permissions - // the delete permission, to enable unshare - // the update permission, to enable moving the share + // the read permissions (1) + // the delete permission (8), to enable unshare $rootInfo = \OC\Files\Filesystem::getFileInfo($this->folder); - $this->assertSame(\OCP\Constants::PERMISSION_READ | \OCP\Constants::PERMISSION_DELETE | \OCP\Constants::PERMISSION_UPDATE, $rootInfo->getPermissions()); + $this->assertSame(9, $rootInfo->getPermissions()); // for the file within the shared folder we expect: // the read permissions (1) diff --git a/lib/private/Files/View.php b/lib/private/Files/View.php index 18942d05ac..0e22415e6f 100644 --- a/lib/private/Files/View.php +++ b/lib/private/Files/View.php @@ -1355,12 +1355,8 @@ class View { return false; } - if ($internalPath === '') { - if ($mount instanceof MoveableMount) { - $data['permissions'] = $data['permissions'] | \OCP\Constants::PERMISSION_UPDATE | \OCP\Constants::PERMISSION_DELETE; - } else { - $data['permissions'] = $data['permissions'] & (\OCP\Constants::PERMISSION_ALL - (\OCP\Constants::PERMISSION_UPDATE | \OCP\Constants::PERMISSION_DELETE)); - } + if ($mount instanceof MoveableMount && $internalPath === '') { + $data['permissions'] |= \OCP\Constants::PERMISSION_DELETE; } $owner = $this->getUserObjectForOwner($storage->getOwner($internalPath));