diff options
Diffstat (limited to 'lib/private/User/Manager.php')
-rw-r--r-- | lib/private/User/Manager.php | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/lib/private/User/Manager.php b/lib/private/User/Manager.php index c9aa17b8bc2..7f9691073c9 100644 --- a/lib/private/User/Manager.php +++ b/lib/private/User/Manager.php @@ -38,6 +38,7 @@ use OCP\IGroup; use OCP\IUserBackend; use OCP\IUserManager; use OCP\IConfig; +use OCP\User\Backend\IGetRealUIDBackend; use OCP\UserInterface; use Symfony\Component\EventDispatcher\EventDispatcherInterface; @@ -151,6 +152,10 @@ class Manager extends PublicEmitter implements IUserManager { * @return \OC\User\User */ protected function getUserObject($uid, $backend, $cacheUser = true) { + if ($backend instanceof IGetRealUIDBackend) { + $uid = $backend->getRealUID($uid); + } + if (isset($this->cachedUsers[$uid])) { return $this->cachedUsers[$uid]; } |