summaryrefslogtreecommitdiffstats
path: root/apps
diff options
context:
space:
mode:
authorMorris Jobke <hey@morrisjobke.de>2015-06-23 18:03:25 +0200
committerMorris Jobke <hey@morrisjobke.de>2015-06-23 18:07:36 +0200
commitd6733e9ca7f441f0a53313ad6d3bb627ebd68322 (patch)
tree167521d82289220e31b2ee22ef497cd0ff70cd4a /apps
parentdc0713941eb660c57418d68b8e7d8c5d3015157c (diff)
downloadnextcloud-server-d6733e9ca7f441f0a53313ad6d3bb627ebd68322.tar.gz
nextcloud-server-d6733e9ca7f441f0a53313ad6d3bb627ebd68322.zip
[sharing] handle shares of users that aren't available anymore
* properly handle the case where an abandoned share is left and simply skip it
Diffstat (limited to 'apps')
-rw-r--r--apps/files_sharing/lib/cache.php8
1 files changed, 7 insertions, 1 deletions
diff --git a/apps/files_sharing/lib/cache.php b/apps/files_sharing/lib/cache.php
index c56af6b97e8..1fbb35de8d3 100644
--- a/apps/files_sharing/lib/cache.php
+++ b/apps/files_sharing/lib/cache.php
@@ -22,6 +22,7 @@
namespace OC\Files\Cache;
+use OC\User\NoUserException;
use OCP\Share_Backend_Collection;
/**
@@ -53,7 +54,12 @@ class Shared_Cache extends Cache {
}
$source = \OC_Share_Backend_File::getSource($target, $this->storage->getMountPoint(), $this->storage->getItemType());
if (isset($source['path']) && isset($source['fileOwner'])) {
- \OC\Files\Filesystem::initMountPoints($source['fileOwner']);
+ try {
+ \OC\Files\Filesystem::initMountPoints($source['fileOwner']);
+ } catch(NoUserException $e) {
+ \OC::$server->getLogger()->warning('The user \'' . $source['uid_owner'] . '\' of a share can\'t be retrieved.', array('app' => 'files_sharing'));
+ return false;
+ }
$mounts = \OC\Files\Filesystem::getMountByNumericId($source['storage']);
if (is_array($mounts) and !empty($mounts)) {
$fullPath = $mounts[0]->getMountPoint() . $source['path'];