From 5b56112dbe66cb94c33c6f6268076018000e6243 Mon Sep 17 00:00:00 2001
From: Matthew Swift <matthew.swift@forgerock.com>
Date: Tue, 28 Jun 2011 11:55:34 +0000
Subject: [PATCH] Fix OPENDJ-219 - Replication server and draft changelog DB code may attempt to reference closed DB

---
 opends/src/server/org/opends/server/replication/server/ReplicationServerDomain.java |   20 ++++++++++++--------
 1 files changed, 12 insertions(+), 8 deletions(-)

diff --git a/opends/src/server/org/opends/server/replication/server/ReplicationServerDomain.java b/opends/src/server/org/opends/server/replication/server/ReplicationServerDomain.java
index 64cc575..e4ddeb3 100644
--- a/opends/src/server/org/opends/server/replication/server/ReplicationServerDomain.java
+++ b/opends/src/server/org/opends/server/replication/server/ReplicationServerDomain.java
@@ -1424,19 +1424,23 @@
     if (handler == null)
       return null;
 
+    ReplicationIterator it;
     try
     {
-      ReplicationIterator it = handler.generateIterator(changeNumber);
-      if (it.next()==false)
-      {
-        it.releaseCursor();
-        throw new Exception("no new change");
-      }
-      return it;
-    } catch (Exception e)
+      it = handler.generateIterator(changeNumber);
+    }
+    catch (Exception e)
     {
       return null;
     }
+
+    if (it.next() == false)
+    {
+      it.releaseCursor();
+      return null;
+    }
+
+    return it;
   }
 
  /**

--
Gitblit v1.10.0