summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRobin Appelman <robin@icewind.nl>2022-09-09 16:21:46 +0200
committerRobin Appelman <robin@icewind.nl>2022-10-03 17:49:15 +0200
commitd230c9167743cb6acb2c6c61328992be6a243964 (patch)
treeff2d8d9fb4d89a02c420d5b266a900f2e7746b21
parenta78956fb9761ad40a11af7f901a2d28a4c15143c (diff)
downloadnextcloud-server-d230c9167743cb6acb2c6c61328992be6a243964.tar.gz
nextcloud-server-d230c9167743cb6acb2c6c61328992be6a243964.zip
use filesystem user instead of file owner for creating version
Signed-off-by: Robin Appelman <robin@icewind.nl>
-rw-r--r--apps/files_versions/lib/Storage.php11
1 files changed, 10 insertions, 1 deletions
diff --git a/apps/files_versions/lib/Storage.php b/apps/files_versions/lib/Storage.php
index 4673b4850fa..e314eddb945 100644
--- a/apps/files_versions/lib/Storage.php
+++ b/apps/files_versions/lib/Storage.php
@@ -210,9 +210,18 @@ class Storage {
$ownerNodes = $ownerFolder->getById($file->getId());
if (count($ownerNodes)) {
$file = current($ownerNodes);
+ $uid = $mount->getShare()->getShareOwner();
}
}
+ /** @var IUserManager $userManager */
+ $userManager = \OC::$server->get(IUserManager::class);
+ $user = $userManager->get($uid);
+
+ if (!$user) {
+ return false;
+ }
+
// no use making versions for empty files
if ($file->getSize() === 0) {
return false;
@@ -227,7 +236,7 @@ class Storage {
/** @var IVersionManager $versionManager */
$versionManager = \OC::$server->get(IVersionManager::class);
- $versionManager->createVersion($file->getOwner(), $file);
+ $versionManager->createVersion($user, $file);
}