diff options
author | Eike Stepper | 2013-03-19 07:06:18 +0000 |
---|---|---|
committer | Eike Stepper | 2013-03-19 07:06:18 +0000 |
commit | 91cb657a942da02218e5fe202b1539a421a4a5a9 (patch) | |
tree | 9cea6f6a1065a45392bc457121fd5ceb590a9336 /plugins/org.eclipse.emf.cdo.common/src/org/eclipse | |
parent | 394eeb0f8062e61fcbc56f14d44a72c7d45fce1f (diff) | |
download | cdo-91cb657a942da02218e5fe202b1539a421a4a5a9.tar.gz cdo-91cb657a942da02218e5fe202b1539a421a4a5a9.tar.xz cdo-91cb657a942da02218e5fe202b1539a421a4a5a9.zip |
[402371] CDOCompareUtil.compare fails with models that use Containmentdrops/S20130319-0336committers/estepper/emf-compare-proxies
Proxies
https://bugs.eclipse.org/bugs/show_bug.cgi?id=402371
Diffstat (limited to 'plugins/org.eclipse.emf.cdo.common/src/org/eclipse')
-rw-r--r-- | plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/common/revision/CDORevisionUtil.java | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/common/revision/CDORevisionUtil.java b/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/common/revision/CDORevisionUtil.java index 60c15c4154..98a224d0b6 100644 --- a/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/common/revision/CDORevisionUtil.java +++ b/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/common/revision/CDORevisionUtil.java @@ -18,6 +18,7 @@ import org.eclipse.emf.cdo.common.commit.CDOChangeSet; import org.eclipse.emf.cdo.common.commit.CDOChangeSetData; import org.eclipse.emf.cdo.common.id.CDOID; import org.eclipse.emf.cdo.common.id.CDOIDUtil; +import org.eclipse.emf.cdo.common.id.CDOWithID; import org.eclipse.emf.cdo.common.revision.delta.CDORevisionDelta; import org.eclipse.emf.cdo.common.util.CDOCommonUtil; import org.eclipse.emf.cdo.internal.common.commit.CDOChangeSetDataImpl; @@ -339,7 +340,18 @@ public final class CDORevisionUtil private static InternalCDORevision getParentRevision(InternalCDORevision revision, CDORevisionProvider provider) { - CDOID parentID = (CDOID)revision.getContainerID(); + CDOID parentID; + + Object containerID = revision.getContainerID(); + if (containerID instanceof CDOWithID) + { + parentID = ((CDOWithID)containerID).cdoID(); + } + else + { + parentID = (CDOID)containerID; + } + if (CDOIDUtil.isNull(parentID)) { parentID = revision.getResourceID(); |