Make sure limit is never negative
There were some cases where a negative limit could be passed in. Which would happily make the query explode. This is just a quick hack to make sure it never is negative. Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
This commit is contained in:
parent
c4a2725f2b
commit
f3af39ec78
1 changed files with 10 additions and 0 deletions
|
@ -259,6 +259,8 @@ class Database extends ABackend
|
||||||
* @return array an array of all displayNames (value) and the corresponding uids (key)
|
* @return array an array of all displayNames (value) and the corresponding uids (key)
|
||||||
*/
|
*/
|
||||||
public function getDisplayNames($search = '', $limit = null, $offset = null) {
|
public function getDisplayNames($search = '', $limit = null, $offset = null) {
|
||||||
|
$limit = $this->fixLimit($limit);
|
||||||
|
|
||||||
$this->fixDI();
|
$this->fixDI();
|
||||||
|
|
||||||
$query = $this->dbConn->getQueryBuilder();
|
$query = $this->dbConn->getQueryBuilder();
|
||||||
|
@ -380,6 +382,8 @@ class Database extends ABackend
|
||||||
* @return string[] an array of all uids
|
* @return string[] an array of all uids
|
||||||
*/
|
*/
|
||||||
public function getUsers($search = '', $limit = null, $offset = null) {
|
public function getUsers($search = '', $limit = null, $offset = null) {
|
||||||
|
$limit = $this->fixLimit($limit);
|
||||||
|
|
||||||
$users = $this->getDisplayNames($search, $limit, $offset);
|
$users = $this->getDisplayNames($search, $limit, $offset);
|
||||||
$userIds = array_map(function ($uid) {
|
$userIds = array_map(function ($uid) {
|
||||||
return (string)$uid;
|
return (string)$uid;
|
||||||
|
@ -485,5 +489,11 @@ class Database extends ABackend
|
||||||
return $this->cache[$uid]['uid'];
|
return $this->cache[$uid]['uid'];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private function fixLimit($limit) {
|
||||||
|
if (is_int($limit) && $limit >= 0) {
|
||||||
|
return $limit;
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue