diff options
author | Roeland Jago Douma <rullzer@users.noreply.github.com> | 2018-04-24 20:04:38 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-04-24 20:04:38 +0200 |
commit | d59791ab6f87ea5248cbed0dcc366055257bc01a (patch) | |
tree | cccccebc480029be588b3e941fcf126037d42d12 | |
parent | 09398397b35e8cf0d97da5fac6595c892f248af3 (diff) | |
parent | 81f71cb1f921c777087dc663c4b87a29483ff10f (diff) | |
download | nextcloud-server-d59791ab6f87ea5248cbed0dcc366055257bc01a.tar.gz nextcloud-server-d59791ab6f87ea5248cbed0dcc366055257bc01a.zip |
Merge pull request #9292 from nextcloud/bugfix/9279/cast_db_backend_numeric
Cast retrieved DB fields to string
-rw-r--r-- | lib/private/User/Database.php | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/lib/private/User/Database.php b/lib/private/User/Database.php index bb6905b2695..001e0c0f4a5 100644 --- a/lib/private/User/Database.php +++ b/lib/private/User/Database.php @@ -222,6 +222,7 @@ class Database extends ABackend * @return string display name */ public function getDisplayName($uid): string { + $uid = (string)$uid; $this->loadUser($uid); return empty($this->cache[$uid]['displayname']) ? $uid : $this->cache[$uid]['displayname']; } @@ -258,7 +259,7 @@ class Database extends ABackend $result = $query->execute(); $displayNames = []; while ($row = $result->fetch()) { - $displayNames[$row['uid']] = $row['displayname']; + $displayNames[(string)$row['uid']] = (string)$row['displayname']; } return $displayNames; @@ -296,7 +297,7 @@ class Database extends ABackend if (!empty($newHash)) { $this->setPassword($uid, $password); } - return $row['uid']; + return (string)$row['uid']; } } @@ -337,8 +338,8 @@ class Database extends ABackend // "uid" is primary key, so there can only be a single result if ($row !== false) { - $this->cache[$uid]['uid'] = $row['uid']; - $this->cache[$uid]['displayname'] = $row['displayname']; + $this->cache[$uid]['uid'] = (string)$row['uid']; + $this->cache[$uid]['displayname'] = (string)$row['displayname']; } else { return false; } @@ -357,7 +358,9 @@ class Database extends ABackend */ public function getUsers($search = '', $limit = null, $offset = null) { $users = $this->getDisplayNames($search, $limit, $offset); - $userIds = array_keys($users); + $userIds = array_map(function ($uid) { + return (string)$uid; + }, array_keys($users)); sort($userIds, SORT_STRING | SORT_FLAG_CASE); return $userIds; } |