From 18517f6adb92752a70be5a80ebf92ddf1d03babc Mon Sep 17 00:00:00 2001
From: Michael Gapczynski <mtgap@owncloud.com>
Date: Sun, 26 Aug 2012 21:34:22 -0400
Subject: [PATCH] Fix share getItems() limit

---
 lib/public/share.php | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/lib/public/share.php b/lib/public/share.php
index 070d69d05a..9ee7ef0516 100644
--- a/lib/public/share.php
+++ b/lib/public/share.php
@@ -516,6 +516,14 @@ class Share {
 				// If the limit is not 1, the filtering can be done later
 				$where .= ' ORDER BY `*PREFIX*share`.`id` DESC';
 			}
+			// The limit must be at least 3, because filtering needs to be done
+			if ($limit < 3) {
+				$queryLimit = 3;
+			} else {
+				$queryLimit = $limit;
+			}
+		} else {
+			$queryLimit = null;
 		}
 		// TODO Optimize selects
 		if ($format == self::FORMAT_STATUSES) {
@@ -544,8 +552,7 @@ class Share {
 			}
 		}
 		$root = strlen($root);
-                // The limit must be at least 3, because filtering needs to be done
-		$query = \OC_DB::prepare('SELECT '.$select.' FROM `*PREFIX*share` '.$where, ($limit < 3 ? 3 : $limit));
+		$query = \OC_DB::prepare('SELECT '.$select.' FROM `*PREFIX*share` '.$where, $queryLimit);
 		$result = $query->execute($queryArgs);
 		$items = array();
 		$targets = array();
-- 
GitLab