aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoeland Jago Douma <rullzer@users.noreply.github.com>2018-04-24 20:04:38 +0200
committerGitHub <noreply@github.com>2018-04-24 20:04:38 +0200
commitd59791ab6f87ea5248cbed0dcc366055257bc01a (patch)
treecccccebc480029be588b3e941fcf126037d42d12
parent09398397b35e8cf0d97da5fac6595c892f248af3 (diff)
parent81f71cb1f921c777087dc663c4b87a29483ff10f (diff)
downloadnextcloud-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.php13
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;
}