Browse Source
relax permissions mask check for detecting part file rename
with files drop uploads the original file name isn't always used for the '.ocTransferId' source path
Signed-off-by: Robin Appelman <robin@icewind.nl>
pull/21558/head
Robin Appelman
6 years ago
No known key found for this signature in database
GPG Key ID: 42B69D8A64526EFB
1 changed files with
3 additions and
7 deletions
-
lib/private/Files/Storage/Wrapper/PermissionsMask.php
|
|
|
@ -80,13 +80,9 @@ class PermissionsMask extends Wrapper { |
|
|
|
} |
|
|
|
|
|
|
|
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); |
|
|
|
} |
|
|
|
//This is a rename of the transfer file to the original file
|
|
|
|
if (dirname($path1) === dirname($path2) && strpos($path1, '.ocTransferId') > 0) { |
|
|
|
return $this->checkMask(Constants::PERMISSION_CREATE) and parent::rename($path1, $path2); |
|
|
|
} |
|
|
|
return $this->checkMask(Constants::PERMISSION_UPDATE) and parent::rename($path1, $path2); |
|
|
|
} |
|
|
|
|