diff options
author | Eike Stepper | 2011-08-10 17:25:34 +0000 |
---|---|---|
committer | Eike Stepper | 2011-08-10 17:25:34 +0000 |
commit | 68f7671241a0eaf0dd6d8734e3976627f869ac02 (patch) | |
tree | e4c9c0c982bfa287c3179df0c317930d5509a33d /plugins | |
parent | b4eeb8bcb32538d9766c01905dd898e01c4f27d1 (diff) | |
download | cdo-68f7671241a0eaf0dd6d8734e3976627f869ac02.tar.gz cdo-68f7671241a0eaf0dd6d8734e3976627f869ac02.tar.xz cdo-68f7671241a0eaf0dd6d8734e3976627f869ac02.zip |
[354395] containsAll returns wrong result in case of detached objects
https://bugs.eclipse.org/bugs/show_bug.cgi?id=354395
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/view/CDOStoreImpl.java | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/view/CDOStoreImpl.java b/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/view/CDOStoreImpl.java index 8f20249b0a..50b662595f 100644 --- a/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/view/CDOStoreImpl.java +++ b/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/view/CDOStoreImpl.java @@ -14,7 +14,6 @@ */ package org.eclipse.emf.internal.cdo.view; -import org.eclipse.emf.cdo.CDOObject; import org.eclipse.emf.cdo.common.id.CDOID; import org.eclipse.emf.cdo.common.model.CDOModelUtil; import org.eclipse.emf.cdo.common.model.CDOType; @@ -33,7 +32,6 @@ import org.eclipse.emf.cdo.internal.common.revision.delta.CDOSetFeatureDeltaImpl import org.eclipse.emf.cdo.internal.common.revision.delta.CDOUnsetFeatureDeltaImpl; import org.eclipse.emf.cdo.spi.common.revision.InternalCDORevision; import org.eclipse.emf.cdo.spi.common.revision.InternalCDORevisionManager; -import org.eclipse.emf.cdo.util.CDOUtil; import org.eclipse.emf.cdo.util.ObjectNotFoundException; import org.eclipse.emf.cdo.view.CDORevisionPrefetchingPolicy; @@ -269,13 +267,9 @@ public final class CDOStoreImpl implements CDOStore boolean result = revision.contains(feature, convertedValue); // Special handling of detached (TRANSIENT) objects, see bug 354395 - if (!result && value instanceof EObject) + if (!result && value != convertedValue && value instanceof EObject) { - CDOObject cdoObjectValue = CDOUtil.getCDOObject((EObject)value); - if (FSMUtil.isTransient(cdoObjectValue)) - { - result = revision.contains(feature, value); - } + result = revision.contains(feature, value); } return result; |