From 2691a06b0eacabe000e9629e0d222d8652f96192 Mon Sep 17 00:00:00 2001
From: Noriko Hosoi <nhosoi@redhat.com>
Date: Tue, 26 Apr 2016 13:53:02 -0700
Subject: [PATCH 380/382] Ticket #48808 - Paged results search returns the
blank list of entries
Bug Description: When a simple paged results slot in a connection is
discarded due to an error, e.g., SIZELIMIT_EXCEEDED, the slot was not
properly cleaned up. Then, if the slot was reused, the leftover flag
confused the code and ended up returning the 0 search result.
Fix Description: This patch adds the clean up code when a slot is re-
used.
https://fedorahosted.org/389/ticket/48808
Reviewed by wibrown@redhat.com (Thank you, William!!)
(cherry picked from commit 09180b25570696d24c86e3a046fb497c15549c64)
(cherry picked from commit a8486ab3b364a9ae088d6404d025058b04ac358d)
(cherry picked from commit e51b4238809a5421fd470f02853d38a70747f7bd)
---
ldap/servers/slapd/pagedresults.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/ldap/servers/slapd/pagedresults.c b/ldap/servers/slapd/pagedresults.c
index d10edd0..c714aff 100644
--- a/ldap/servers/slapd/pagedresults.c
+++ b/ldap/servers/slapd/pagedresults.c
@@ -145,6 +145,7 @@ pagedresults_parse_control_value( Slapi_PBlock *pb,
prp = conn->c_pagedresults.prl_list;
for (i = 0; i < conn->c_pagedresults.prl_maxlen; i++, prp++) {
if (!prp->pr_current_be) { /* unused slot; take it */
+ _pr_cleanup_one_slot(prp);
prp->pr_current_be = be;
*index = i;
break;
--
2.4.11