diff options
author | Daniel Calviño Sánchez <danxuliu@gmail.com> | 2018-07-23 09:47:24 +0200 |
---|---|---|
committer | Morris Jobke <hey@morrisjobke.de> | 2018-07-24 15:05:42 +0200 |
commit | b7474ed482689686b334b4c628279b7484caf78f (patch) | |
tree | ace3565672b358a0f9596c686f2a1223107f0d4d /apps | |
parent | 5cfac8eceae65634d9718da6a9e0951ed36c8391 (diff) | |
download | nextcloud-server-b7474ed482689686b334b4c628279b7484caf78f.tar.gz nextcloud-server-b7474ed482689686b334b4c628279b7484caf78f.zip |
Fix transfering ownership of a share to user with same id as receiver
When the ownership of a user share is transfered to the receiver the
share is removed, as the receiver now owns the original file. However,
due to a missing condition, any share with a group, link or remote with
the same id as the user was removed, not only the user shares.
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
Diffstat (limited to 'apps')
-rw-r--r-- | apps/files/lib/Command/TransferOwnership.php | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/apps/files/lib/Command/TransferOwnership.php b/apps/files/lib/Command/TransferOwnership.php index d175f66d171..6113f6df54c 100644 --- a/apps/files/lib/Command/TransferOwnership.php +++ b/apps/files/lib/Command/TransferOwnership.php @@ -263,7 +263,8 @@ class TransferOwnership extends Command { foreach($this->shares as $share) { try { - if ($share->getSharedWith() === $this->destinationUser) { + if ($share->getShareType() === \OCP\Share::SHARE_TYPE_USER && + $share->getSharedWith() === $this->destinationUser) { // Unmount the shares before deleting, so we don't try to get the storage later on. $shareMountPoint = $this->mountManager->find('/' . $this->destinationUser . '/files' . $share->getTarget()); if ($shareMountPoint) { |