Compatibility with newer EGit

Change-Id: I62b91974763c0ee650f861dd5b64b9357300c8b3
diff --git a/plugins/org.eclipse.emf.compare.egit/src/org/eclipse/emf/compare/egit/internal/merge/RecursiveModelMerger.java b/plugins/org.eclipse.emf.compare.egit/src/org/eclipse/emf/compare/egit/internal/merge/RecursiveModelMerger.java
index 413873b..dff663b 100644
--- a/plugins/org.eclipse.emf.compare.egit/src/org/eclipse/emf/compare/egit/internal/merge/RecursiveModelMerger.java
+++ b/plugins/org.eclipse.emf.compare.egit/src/org/eclipse/emf/compare/egit/internal/merge/RecursiveModelMerger.java
@@ -290,12 +290,18 @@
 			throws MissingObjectException, IncorrectObjectTypeException, CorruptObjectException, IOException {
 		boolean hasWorkingTreeIterator = tw.getTreeCount() > T_FILE;
 		boolean hasAttributeNodeProvider = treeWalk.getAttributesNodeProvider() != null;
+		Attributes[] attributes = {new Attributes(), new Attributes(), new Attributes() };
+		if (hasAttributeNodeProvider) {
+			attributes[T_BASE] = treeWalk.getAttributes(T_BASE);
+			attributes[T_OURS] = treeWalk.getAttributes(T_OURS);
+			attributes[T_THEIRS] = treeWalk.getAttributes(T_THEIRS);
+		}
 		return processEntry(treeWalk.getTree(T_BASE, CanonicalTreeParser.class),
 				treeWalk.getTree(T_OURS, CanonicalTreeParser.class),
 				treeWalk.getTree(T_THEIRS, CanonicalTreeParser.class),
 				treeWalk.getTree(T_INDEX, DirCacheBuildIterator.class),
 				hasWorkingTreeIterator ? treeWalk.getTree(T_FILE, WorkingTreeIterator.class) : null,
-				ignoreConflicts, hasAttributeNodeProvider ? treeWalk.getAttributes() : new Attributes());
+				ignoreConflicts, attributes);
 	}
 
 	/**