diff options
-rw-r--r-- | lib/private/User/Database.php | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/lib/private/User/Database.php b/lib/private/User/Database.php index 69826f49be3..dccdb790145 100644 --- a/lib/private/User/Database.php +++ b/lib/private/User/Database.php @@ -75,7 +75,6 @@ class Database extends Backend implements IUserBackend { */ public function __construct($eventDispatcher = null) { $this->cache = new CappedMemoryCache(); - $this->cache[null] = false; $this->eventDispatcher = $eventDispatcher ? $eventDispatcher : \OC::$server->getEventDispatcher(); } @@ -239,6 +238,12 @@ class Database extends Backend implements IUserBackend { */ private function loadUser($uid) { if (!isset($this->cache[$uid])) { + //guests $uid could be NULL or '' + if (empty($uid)) { + $this->cache[$uid]=false; + return true; + } + $query = \OC_DB::prepare('SELECT `uid`, `displayname` FROM `*PREFIX*users` WHERE LOWER(`uid`) = LOWER(?)'); $result = $query->execute(array($uid)); |