diff options
author | Robin Appelman <icewind@owncloud.com> | 2015-09-03 13:46:08 +0200 |
---|---|---|
committer | Robin Appelman <icewind@owncloud.com> | 2015-09-03 13:46:08 +0200 |
commit | fd7b210654dfb2c310264fec70683cdd7682b3bb (patch) | |
tree | 7503ebdac7287656f05029c707869084418faccf /apps | |
parent | 8684420d0a503f5c913343eca838b3a7dc903506 (diff) | |
download | nextcloud-server-fd7b210654dfb2c310264fec70683cdd7682b3bb.tar.gz nextcloud-server-fd7b210654dfb2c310264fec70683cdd7682b3bb.zip |
Delay setting up the filesystem for a share owner untill the share is used
Diffstat (limited to 'apps')
-rw-r--r-- | apps/files_sharing/lib/mountprovider.php | 6 | ||||
-rw-r--r-- | apps/files_sharing/lib/sharedstorage.php | 7 |
2 files changed, 6 insertions, 7 deletions
diff --git a/apps/files_sharing/lib/mountprovider.php b/apps/files_sharing/lib/mountprovider.php index 3f59fd131d0..14a79625993 100644 --- a/apps/files_sharing/lib/mountprovider.php +++ b/apps/files_sharing/lib/mountprovider.php @@ -66,12 +66,6 @@ class MountProvider implements IMountProvider { return $share['permissions'] > 0; }); $shares = array_map(function ($share) use ($user, $storageFactory) { - try { - Filesystem::initMountPoints($share['uid_owner']); - } catch(NoUserException $e) { - \OC::$server->getLogger()->warning('The user \'' . $share['uid_owner'] . '\' of share with ID \'' . $share['id'] . '\' can\'t be retrieved.', array('app' => 'files_sharing')); - return null; - } // for updating etags for the share owner when we make changes to this share. $ownerPropagator = $this->propagationManager->getChangePropagator($share['uid_owner']); diff --git a/apps/files_sharing/lib/sharedstorage.php b/apps/files_sharing/lib/sharedstorage.php index c7529df0617..1ac401f3cf8 100644 --- a/apps/files_sharing/lib/sharedstorage.php +++ b/apps/files_sharing/lib/sharedstorage.php @@ -55,6 +55,10 @@ class Shared extends \OC\Files\Storage\Common implements ISharedStorage { $this->ownerView = $arguments['ownerView']; } + private function init() { + Filesystem::initMountPoints($this->share['uid_owner']); + } + /** * get id of the mount point * @@ -80,6 +84,7 @@ class Shared extends \OC\Files\Storage\Common implements ISharedStorage { * @return array Returns array with the keys path, permissions, and owner or false if not found */ public function getFile($target) { + $this->init(); if (!isset($this->files[$target])) { // Check for partial files if (pathinfo($target, PATHINFO_EXTENSION) === 'part') { @@ -319,7 +324,7 @@ class Shared extends \OC\Files\Storage\Common implements ISharedStorage { } public function rename($path1, $path2) { - + $this->init(); // we need the paths relative to data/user/files $relPath1 = $this->getMountPoint() . '/' . $path1; $relPath2 = $this->getMountPoint() . '/' . $path2; |