Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSimon McDuff2008-12-15 15:45:52 +0000
committerSimon McDuff2008-12-15 15:45:52 +0000
commitb70b6b0c12e09054d4f8531d8f2118d9c69bad3c (patch)
tree997569063beb1b89f27f1ebd8427d10e2efde424
parent8188749aea17055a1a0a7ef0d81f1da9bd76afe1 (diff)
downloadcdo-b70b6b0c12e09054d4f8531d8f2118d9c69bad3c.tar.gz
cdo-b70b6b0c12e09054d4f8531d8f2118d9c69bad3c.tar.xz
cdo-b70b6b0c12e09054d4f8531d8f2118d9c69bad3c.zip
[257372] Handle conflict object without rollback the view completely
https://bugs.eclipse.org/bugs/show_bug.cgi?id=257372
-rw-r--r--plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/spi/cdo/ObjectConflictResolver.java5
1 files changed, 2 insertions, 3 deletions
diff --git a/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/spi/cdo/ObjectConflictResolver.java b/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/spi/cdo/ObjectConflictResolver.java
index 582e38263c..123505fc6b 100644
--- a/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/spi/cdo/ObjectConflictResolver.java
+++ b/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/spi/cdo/ObjectConflictResolver.java
@@ -32,7 +32,6 @@ import org.eclipse.emf.internal.cdo.CDOObjectMerger;
import org.eclipse.emf.internal.cdo.CDOStateMachine;
import org.eclipse.emf.internal.cdo.InternalCDOObject;
import org.eclipse.emf.internal.cdo.bundle.OM;
-import org.eclipse.emf.internal.cdo.util.FSMUtil;
import org.eclipse.emf.common.notify.Adapter;
import org.eclipse.emf.common.notify.Notification;
@@ -187,8 +186,8 @@ public abstract class ObjectConflictResolver implements CDOConflictResolver
@Override
public void rolledBackTransaction(CDOTransaction transaction)
{
- // TODO Simon: Consider save points!
- if (getTransaction() == transaction)
+ // Reset the accumulation only if it rolled back the transaction completely
+ if (getTransaction() == transaction && transaction.getLastSavepoint().getPreviousSavepoint() == null)
{
adapter.reset();
}

Back to the top