From f2103f466892df823201ed457d0c73a8dd3ddfc0 Mon Sep 17 00:00:00 2001
From: neil_a_wilson <neil_a_wilson@localhost>
Date: Wed, 25 Oct 2006 18:23:33 +0000
Subject: [PATCH] Update the LDIF diff tool to fix a potential infinite loop that could occur if the last entry in the source file had been deleted.
---
opends/src/server/org/opends/server/tools/LDIFDiff.java | 13 +++++--------
1 files changed, 5 insertions(+), 8 deletions(-)
diff --git a/opends/src/server/org/opends/server/tools/LDIFDiff.java b/opends/src/server/org/opends/server/tools/LDIFDiff.java
index 50ff1d2..c1e65ab 100644
--- a/opends/src/server/org/opends/server/tools/LDIFDiff.java
+++ b/opends/src/server/org/opends/server/tools/LDIFDiff.java
@@ -510,16 +510,13 @@
{
// There are no more target entries so all of the remaining source
// entries are deletes.
- while (true)
+ writeDelete(writer, sourceEntry);
+ differenceFound = true;
+ while (sourceIterator.hasNext())
{
+ sourceDN = sourceIterator.next();
+ sourceEntry = sourceMap.get(sourceDN);
writeDelete(writer, sourceEntry);
- differenceFound = true;
- while (sourceIterator.hasNext())
- {
- sourceDN = sourceIterator.next();
- sourceEntry = sourceMap.get(sourceDN);
- writeDelete(writer, sourceEntry);
- }
}
}
}
--
Gitblit v1.10.0