From 2b575fea99ad1273b69d2d19bd23dda463545aea Mon Sep 17 00:00:00 2001 From: Eike Stepper Date: Mon, 4 Jul 2011 18:11:47 +0000 Subject: [350027] Fix index for moves from left to right https://bugs.eclipse.org/bugs/show_bug.cgi?id=350027 --- .../internal/common/revision/delta/CDOMoveFeatureDeltaImpl.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'plugins/org.eclipse.emf.cdo.common') diff --git a/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/revision/delta/CDOMoveFeatureDeltaImpl.java b/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/revision/delta/CDOMoveFeatureDeltaImpl.java index d54d03bae4..3f195af859 100644 --- a/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/revision/delta/CDOMoveFeatureDeltaImpl.java +++ b/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/revision/delta/CDOMoveFeatureDeltaImpl.java @@ -17,9 +17,9 @@ import org.eclipse.emf.cdo.common.revision.CDORevision; import org.eclipse.emf.cdo.common.revision.delta.CDOFeatureDelta; import org.eclipse.emf.cdo.common.revision.delta.CDOFeatureDeltaVisitor; import org.eclipse.emf.cdo.common.revision.delta.CDOMoveFeatureDelta; +import org.eclipse.emf.cdo.spi.common.revision.CDOReferenceAdjuster; import org.eclipse.emf.cdo.spi.common.revision.InternalCDOFeatureDelta.ListIndexAffecting; import org.eclipse.emf.cdo.spi.common.revision.InternalCDOFeatureDelta.WithIndex; -import org.eclipse.emf.cdo.spi.common.revision.CDOReferenceAdjuster; import org.eclipse.emf.cdo.spi.common.revision.InternalCDORevision; import org.eclipse.emf.ecore.EClass; @@ -168,6 +168,12 @@ public class CDOMoveFeatureDeltaImpl extends CDOFeatureDeltaImpl implements CDOM --oldPosition; } + // Index fix for moves from left to right. + if (oldPosition < newPosition) + { + --index; + } + if (index < newPosition && newPosition > 0) { --newPosition; -- cgit v1.2.3