diff --git a/apps/dav/lib/Files/Sharing/FilesDropPlugin.php b/apps/dav/lib/Files/Sharing/FilesDropPlugin.php new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/lib/private/Files/Storage/Wrapper/PermissionsMask.php b/lib/private/Files/Storage/Wrapper/PermissionsMask.php index 39375602c3436..7bcb1087fefba 100644 --- a/lib/private/Files/Storage/Wrapper/PermissionsMask.php +++ b/lib/private/Files/Storage/Wrapper/PermissionsMask.php @@ -78,6 +78,14 @@ public function getPermissions($path) { } public function rename($path1, $path2) { + $p = strpos($path1, $path2); + if ($p === 0) { + $part = substr($path1, strlen($path2)); + //This is a rename of the transfer file to the original file + if (strpos($part, '.ocTransferId') === 0) { + return $this->checkMask(Constants::PERMISSION_CREATE) and parent::rename($path1, $path2); + } + } return $this->checkMask(Constants::PERMISSION_UPDATE) and parent::rename($path1, $path2); }