aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/private/User/Manager.php5
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/private/User/Manager.php b/lib/private/User/Manager.php
index 12c615d500b..1827be61a7a 100644
--- a/lib/private/User/Manager.php
+++ b/lib/private/User/Manager.php
@@ -158,7 +158,7 @@ class Manager extends PublicEmitter implements IUserManager {
return $this->cachedUsers[$uid];
}
- $cachedBackend = $this->cache->get($uid);
+ $cachedBackend = $this->cache->get(sha1($uid));
if ($cachedBackend !== null && isset($this->backends[$cachedBackend])) {
// Cache has the info of the user backend already, so ask that one directly
$backend = $this->backends[$cachedBackend];
@@ -174,7 +174,8 @@ class Manager extends PublicEmitter implements IUserManager {
}
if ($backend->userExists($uid)) {
- $this->cache->set($uid, $i, 300);
+ // Hash $uid to ensure that only valid characters are used for the cache key
+ $this->cache->set(sha1($uid), $i, 300);
return $this->getUserObject($uid, $backend);
}
}