From f77474f1df824bfb61227c50c31c8cb5e24e3834 Mon Sep 17 00:00:00 2001 From: Howard Chu Date: Fri, 16 Jan 2004 19:07:03 +0000 Subject: [PATCH] ITS#2924, fix transition to subsequent subordinates --- servers/slapd/backglue.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/servers/slapd/backglue.c b/servers/slapd/backglue.c index bd0a4338f2..c9c29a1860 100644 --- a/servers/slapd/backglue.c +++ b/servers/slapd/backglue.c @@ -441,7 +441,8 @@ glue_tool_entry_first ( } } - if (!glueBack || glueBack->be_entry_open (glueBack, glueMode) != 0) + if (!glueBack || !glueBack->be_entry_open || !glueBack->be_entry_first || + glueBack->be_entry_open (glueBack, glueMode) != 0) return NOID; return glueBack->be_entry_first (glueBack); @@ -462,7 +463,7 @@ glue_tool_entry_next ( rc = glueBack->be_entry_next (glueBack); /* If we ran out of entries in one database, move on to the next */ - if (rc == NOID) { + while (rc == NOID) { glueBack->be_entry_close (glueBack); for (i=0; inodes; i++) { if (gi->n[i].be == glueBack) @@ -470,7 +471,7 @@ glue_tool_entry_next ( } if (i == 0) { glueBack = NULL; - rc = NOID; + break; } else { glueBack = gi->n[i-1].be; rc = glue_tool_entry_first (b0); -- 2.39.5