diff options
-rw-r--r-- | plugins/org.eclipse.emf.compare/src/org/eclipse/emf/compare/internal/spec/ComparisonSpec.java | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/plugins/org.eclipse.emf.compare/src/org/eclipse/emf/compare/internal/spec/ComparisonSpec.java b/plugins/org.eclipse.emf.compare/src/org/eclipse/emf/compare/internal/spec/ComparisonSpec.java index 3b4bdeb6a..8fe9485bd 100644 --- a/plugins/org.eclipse.emf.compare/src/org/eclipse/emf/compare/internal/spec/ComparisonSpec.java +++ b/plugins/org.eclipse.emf.compare/src/org/eclipse/emf/compare/internal/spec/ComparisonSpec.java @@ -86,6 +86,7 @@ public class ComparisonSpec extends ComparisonImpl { eAdapters().add(diffCrossReferencer);
}
+ Iterable<Diff> diffOnElement = filter(getInverse(element, diffCrossReferencer), Diff.class);
final Match match = getMatch(element);
if (match != null) {
Iterable<Diff> left = ImmutableList.of();
@@ -100,10 +101,11 @@ public class ComparisonSpec extends ComparisonImpl { if (match.getOrigin() != null) {
origin = filter(getInverse(match.getOrigin(), diffCrossReferencer), Diff.class);
}
- Set<Diff> crossRefs = ImmutableSet.copyOf(Iterables.concat(left, right, origin));
+ Set<Diff> crossRefs = ImmutableSet.copyOf(Iterables.concat(diffOnElement, left, right, origin));
return new BasicEList<Diff>(crossRefs);
+ } else {
+ return new BasicEList<Diff>(ImmutableSet.copyOf(diffOnElement));
}
- return new BasicEList<Diff>();
}
/**
|