mirror of
https://github.com/nextcloud/server.git
synced 2026-04-15 22:11:17 -04:00
fix(systemtags): catch empty nodes
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
This commit is contained in:
parent
f6593a7464
commit
bd04c26427
1 changed files with 15 additions and 5 deletions
|
|
@ -539,14 +539,24 @@ class SystemTagPlugin extends \Sabre\DAV\ServerPlugin {
|
|||
private function canUpdateTagForFileIds(array $fileIds): bool {
|
||||
$user = $this->userSession->getUser();
|
||||
$userFolder = $this->rootFolder->getUserFolder($user->getUID());
|
||||
|
||||
foreach ($fileIds as $fileId) {
|
||||
$nodes = $userFolder->getById((int)$fileId);
|
||||
foreach ($nodes as $node) {
|
||||
if (($node->getPermissions() & Constants::PERMISSION_UPDATE) === Constants::PERMISSION_UPDATE) {
|
||||
return true;
|
||||
try {
|
||||
$nodes = $userFolder->getById((int)$fileId);
|
||||
if (empty($nodes)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
foreach ($nodes as $node) {
|
||||
if (($node->getPermissions() & Constants::PERMISSION_UPDATE) !== Constants::PERMISSION_UPDATE) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
} catch (\Exception $e) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue