Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/server.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin Appelman <robin@icewind.nl>2022-09-09 17:21:46 +0300
committerRobin Appelman <robin@icewind.nl>2022-10-03 18:49:15 +0300
commitd230c9167743cb6acb2c6c61328992be6a243964 (patch)
treeff2d8d9fb4d89a02c420d5b266a900f2e7746b21
parenta78956fb9761ad40a11af7f901a2d28a4c15143c (diff)
use filesystem user instead of file owner for creating versionbackport/34001/stable24
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);
}