From 2d30511fa63780d1b2931e1daa37d2f150f6d0d7 Mon Sep 17 00:00:00 2001 From: Daniel Kesselberg Date: Sun, 16 Sep 2018 19:33:03 +0200 Subject: [PATCH] Check if user is null before getUsername Signed-off-by: Daniel Kesselberg --- apps/user_ldap/lib/User_LDAP.php | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/apps/user_ldap/lib/User_LDAP.php b/apps/user_ldap/lib/User_LDAP.php index 11ed02f47a..fbdf1cc255 100644 --- a/apps/user_ldap/lib/User_LDAP.php +++ b/apps/user_ldap/lib/User_LDAP.php @@ -119,24 +119,26 @@ class User_LDAP extends BackendUtility implements \OCP\IUserBackend, \OCP\UserIn } /** - * returns the username for the given login name, if available + * Return the username for the given login name, if available * * @param string $loginName * @return string|false + * @throws \Exception */ public function loginName2UserName($loginName) { - $cacheKey = 'loginName2UserName-'.$loginName; + $cacheKey = 'loginName2UserName-' . $loginName; $username = $this->access->connection->getFromCache($cacheKey); - if(!is_null($username)) { + + if ($username !== null) { return $username; } try { $ldapRecord = $this->getLDAPUserByLoginName($loginName); $user = $this->access->userManager->get($ldapRecord['dn'][0]); - if($user instanceof OfflineUser) { + if ($user === null || $user instanceof OfflineUser) { // this path is not really possible, however get() is documented - // to return User or OfflineUser so we are very defensive here. + // to return User, OfflineUser or null so we are very defensive here. $this->access->connection->writeToCache($cacheKey, false); return false; }