diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/lib/IndexDiff.java b/org.eclipse.jgit/src/org/eclipse/jgit/lib/IndexDiff.java index 52fc3db79..2ffc54872 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/lib/IndexDiff.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/lib/IndexDiff.java @@ -197,8 +197,9 @@ public boolean diff() throws IOException { if (treeIterator != null) { if (dirCacheIterator != null) { - if (!treeIterator.getEntryObjectId().equals( - dirCacheIterator.getEntryObjectId())) { + if (!treeIterator.idEqual(dirCacheIterator) + || treeIterator.getEntryRawMode() + != dirCacheIterator.getEntryRawMode()) { // in repo, in index, content diff => changed changed.add(treeWalk.getPathString()); changesExist = true;