summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRobin Appelman <robin@icewind.nl>2017-05-05 17:21:02 +0200
committerGitHub <noreply@github.com>2017-05-05 17:21:02 +0200
commitaf4b792d88c33d93a5edc50b5cb7d3e698f75f5c (patch)
tree7321525fd8bcbd66c4bc8c00a9ae89bac76f7d2e
parent57275e99440c38ea0a06e0bc896f68d6178f87b0 (diff)
parent2b0da0f21888ecda6690cc99f290705320054bbc (diff)
downloadnextcloud-server-af4b792d88c33d93a5edc50b5cb7d3e698f75f5c.tar.gz
nextcloud-server-af4b792d88c33d93a5edc50b5cb7d3e698f75f5c.zip
Merge pull request #4710 from nextcloud/skeleton-read-only
handle permissions errors when copying the skeleton for a read only user
-rw-r--r--lib/private/User/Session.php9
1 files changed, 7 insertions, 2 deletions
diff --git a/lib/private/User/Session.php b/lib/private/User/Session.php
index efa11348efe..ac0150ff611 100644
--- a/lib/private/User/Session.php
+++ b/lib/private/User/Session.php
@@ -46,6 +46,7 @@ use OC_User;
use OC_Util;
use OCA\DAV\Connector\Sabre\Auth;
use OCP\AppFramework\Utility\ITimeFactory;
+use OCP\Files\NotPermittedException;
use OCP\IConfig;
use OCP\IRequest;
use OCP\ISession;
@@ -480,8 +481,12 @@ class Session implements IUserSession, Emitter {
//trigger creation of user home and /files folder
$userFolder = \OC::$server->getUserFolder($user);
- // copy skeleton
- \OC_Util::copySkeleton($user, $userFolder);
+ try {
+ // copy skeleton
+ \OC_Util::copySkeleton($user, $userFolder);
+ } catch (NotPermittedException $ex) {
+ // read only uses
+ }
// trigger any other initialization
\OC::$server->getEventDispatcher()->dispatch(IUser::class . '::firstLogin', new GenericEvent($this->getUser()));