From 5493d9a8f9c2439117a15b6a5a0c301ac6bf1a0c Mon Sep 17 00:00:00 2001
From: Florian Hoelzl <hoelzl@fortiss.org>
Date: Wed, 18 Jan 2012 15:37:27 +0000
Subject: [PATCH] bugfix in unique ID utils refs 531

---
 .../fortiss/tooling/kernel/utils/UniqueIDUtils.java    | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/utils/UniqueIDUtils.java b/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/utils/UniqueIDUtils.java
index 7051d7350..a7cc9fa1b 100644
--- a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/utils/UniqueIDUtils.java
+++ b/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/utils/UniqueIDUtils.java
@@ -33,7 +33,7 @@ import org.fortiss.tooling.kernel.model.IIdLabeled;
  * @author hoelzl
  * @author $Author$
  * @version $Rev$
- * @ConQAT.Rating YELLOW Hash: 20798F4B379821E393B1CC36691662EA
+ * @ConQAT.Rating YELLOW Hash: 2E094C6518A90C6A4064C4FF61C4A07F
  */
 public class UniqueIDUtils {
 
@@ -122,6 +122,14 @@ public class UniqueIDUtils {
 					usedIDs.add(((IIdLabeled) eo).getId());
 				}
 			}
+			if (object instanceof IIdLabeled) {
+
+				if (!usedIDs.add(((IIdLabeled) object).getId())) {
+					int newId = ++currentMaxId;
+					((IIdLabeled) object).setId(newId);
+					usedIDs.add(newId);
+				}
+			}
 
 			for (Iterator<EObject> i = object.eAllContents(); i.hasNext();) {
 				EObject eo = i.next();
-- 
GitLab