From 2b8a2e16eddcd04bd47e2bc93ac691deee5ee762 Mon Sep 17 00:00:00 2001
From: Arthur Schiwon <blizzz@owncloud.com>
Date: Wed, 22 Aug 2012 10:29:15 +0200
Subject: [PATCH] LDAP: don't pass -1 as length to array slice, when no limit
 is given. It cuts off the last item.

---
 apps/user_ldap/group_ldap.php | 9 +++++++++
 apps/user_ldap/user_ldap.php  | 3 +++
 2 files changed, 12 insertions(+)

diff --git a/apps/user_ldap/group_ldap.php b/apps/user_ldap/group_ldap.php
index 709144539e..b29ebe30c5 100644
--- a/apps/user_ldap/group_ldap.php
+++ b/apps/user_ldap/group_ldap.php
@@ -143,6 +143,9 @@ class GROUP_LDAP extends lib\Access implements \OCP\GroupInterface {
 			if(!empty($this->groupSearch)) {
 				$groupUsers = array_filter($groupUsers, array($this, 'groupMatchesFilter'));
 			}
+			if($limit = -1) {
+				$limit = null;
+			}
 			return array_slice($groupUsers, $offset, $limit);
 		}
 
@@ -184,6 +187,9 @@ class GROUP_LDAP extends lib\Access implements \OCP\GroupInterface {
 		if(!empty($this->groupSearch)) {
 			$groupUsers = array_filter($groupUsers, array($this, 'groupMatchesFilter'));
 		}
+		if($limit = -1) {
+			$limit = null;
+		}
 		return array_slice($groupUsers, $offset, $limit);
 
 	}
@@ -210,6 +216,9 @@ class GROUP_LDAP extends lib\Access implements \OCP\GroupInterface {
 		if(!empty($this->groupSearch)) {
 			$ldap_groups = array_filter($ldap_groups, array($this, 'groupMatchesFilter'));
 		}
+		if($limit = -1) {
+			$limit = null;
+		}
 		return array_slice($ldap_groups, $offset, $limit);
 	}
 
diff --git a/apps/user_ldap/user_ldap.php b/apps/user_ldap/user_ldap.php
index 31b6dccbf6..a97df7b4fd 100644
--- a/apps/user_ldap/user_ldap.php
+++ b/apps/user_ldap/user_ldap.php
@@ -111,6 +111,9 @@ class USER_LDAP extends lib\Access implements \OCP\UserInterface {
 		if(!empty($this->userSearch)) {
 			$ldap_users = array_filter($ldap_users, array($this, 'userMatchesFilter'));
 		}
+		if($limit = -1) {
+			$limit = null;
+		}
 		return array_slice($ldap_users, $offset, $limit);
 	}
 
-- 
GitLab