Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorlgoubet2019-08-28 08:06:56 +0000
committerlgoubet2019-08-28 08:06:56 +0000
commita9a46d1dca11195b5c899f5787df0e3ed58f4b99 (patch)
tree3b55d6386756eaff673b0a6381385f80653142cf /plugins
parentd2fcb3b665e8de45a128c17e586f3f936e1e8456 (diff)
downloadorg.eclipse.emf.compare-a9a46d1dca11195b5c899f5787df0e3ed58f4b99.tar.gz
org.eclipse.emf.compare-a9a46d1dca11195b5c899f5787df0e3ed58f4b99.tar.xz
org.eclipse.emf.compare-a9a46d1dca11195b5c899f5787df0e3ed58f4b99.zip
Potential out of bounds exception
EList.move cannot be called with an index equal to the list's size. Change-Id: Ia05a7bff2b6312ab07925bdea78145bc27d72214
Diffstat (limited to 'plugins')
-rw-r--r--plugins/org.eclipse.emf.compare/src/org/eclipse/emf/compare/merge/AttributeChangeMerger.java2
-rw-r--r--plugins/org.eclipse.emf.compare/src/org/eclipse/emf/compare/merge/FeatureMapChangeMerger.java4
-rw-r--r--plugins/org.eclipse.emf.compare/src/org/eclipse/emf/compare/merge/ReferenceChangeMerger.java4
3 files changed, 5 insertions, 5 deletions
diff --git a/plugins/org.eclipse.emf.compare/src/org/eclipse/emf/compare/merge/AttributeChangeMerger.java b/plugins/org.eclipse.emf.compare/src/org/eclipse/emf/compare/merge/AttributeChangeMerger.java
index 434d17289..6b915f6e7 100644
--- a/plugins/org.eclipse.emf.compare/src/org/eclipse/emf/compare/merge/AttributeChangeMerger.java
+++ b/plugins/org.eclipse.emf.compare/src/org/eclipse/emf/compare/merge/AttributeChangeMerger.java
@@ -257,7 +257,7 @@ public class AttributeChangeMerger extends AbstractMerger {
}
if (targetList instanceof EList<?>) {
- if (insertionIndex < 0 || insertionIndex > targetList.size()) {
+ if (insertionIndex < 0 || insertionIndex >= targetList.size()) {
((EList<Object>)targetList).move(targetList.size() - 1, expectedValue);
} else {
((EList<Object>)targetList).move(insertionIndex, expectedValue);
diff --git a/plugins/org.eclipse.emf.compare/src/org/eclipse/emf/compare/merge/FeatureMapChangeMerger.java b/plugins/org.eclipse.emf.compare/src/org/eclipse/emf/compare/merge/FeatureMapChangeMerger.java
index c2fc08d62..42b13537c 100644
--- a/plugins/org.eclipse.emf.compare/src/org/eclipse/emf/compare/merge/FeatureMapChangeMerger.java
+++ b/plugins/org.eclipse.emf.compare/src/org/eclipse/emf/compare/merge/FeatureMapChangeMerger.java
@@ -517,13 +517,13 @@ public class FeatureMapChangeMerger extends AbstractMerger {
}
if (currentIndex == -1) {
- if (insertionIndex < 0 || insertionIndex > targetList.size()) {
+ if (insertionIndex < 0 || insertionIndex >= targetList.size()) {
((BasicFeatureMap)(Object)targetList).addUnique(expectedValue);
} else {
((BasicFeatureMap)(Object)targetList).addUnique(insertionIndex, expectedValue);
}
} else {
- if (insertionIndex < 0 || insertionIndex > targetList.size()) {
+ if (insertionIndex < 0 || insertionIndex >= targetList.size()) {
((BasicFeatureMap)(Object)targetList).move(targetList.size() - 1, expectedValue);
} else {
((BasicFeatureMap)(Object)targetList).move(insertionIndex, expectedValue);
diff --git a/plugins/org.eclipse.emf.compare/src/org/eclipse/emf/compare/merge/ReferenceChangeMerger.java b/plugins/org.eclipse.emf.compare/src/org/eclipse/emf/compare/merge/ReferenceChangeMerger.java
index d71c2f3cc..4cce909b0 100644
--- a/plugins/org.eclipse.emf.compare/src/org/eclipse/emf/compare/merge/ReferenceChangeMerger.java
+++ b/plugins/org.eclipse.emf.compare/src/org/eclipse/emf/compare/merge/ReferenceChangeMerger.java
@@ -284,14 +284,14 @@ public class ReferenceChangeMerger extends AbstractMerger {
targetList.add(insertionIndex, expectedValue);
}
} else if (targetList instanceof EList<?>) {
- if (insertionIndex < 0 || insertionIndex > targetList.size()) {
+ if (insertionIndex < 0 || insertionIndex >= targetList.size()) {
((EList<EObject>)targetList).move(targetList.size() - 1, expectedValue);
} else {
((EList<EObject>)targetList).move(insertionIndex, expectedValue);
}
} else {
targetList.remove(expectedValue);
- if (insertionIndex < 0 || insertionIndex > targetList.size()) {
+ if (insertionIndex < 0 || insertionIndex >= targetList.size()) {
targetList.add(expectedValue);
} else {
targetList.add(insertionIndex, expectedValue);

Back to the top