Browse Source

Compare modes before comparing ids in ResolveMerger

Comparing ids can be more expensive so do the cheap
mode check first and short circuit the id comparison
when modes are non-equal

Change-Id: I671eda51c74a411cc27de9d6077cc76e816ebe2b
tags/v2.0.0.201206130900-r
Kevin Sawicki 12 years ago
parent
commit
c403d0b187
1 changed files with 2 additions and 2 deletions
  1. 2
    2
      org.eclipse.jgit/src/org/eclipse/jgit/merge/ResolveMerger.java

+ 2
- 2
org.eclipse.jgit/src/org/eclipse/jgit/merge/ResolveMerger.java View File

@@ -556,7 +556,7 @@ public class ResolveMerger extends ThreeWayMerger {

// Index entry has to match ours to be considered clean
final boolean isDirty = nonTree(modeI)
&& !(tw.idEqual(T_INDEX, T_OURS) && modeO == modeI);
&& !(modeO == modeI && tw.idEqual(T_INDEX, T_OURS));
if (isDirty)
failingPaths
.put(tw.getPathString(), MergeFailureReason.DIRTY_INDEX);
@@ -572,7 +572,7 @@ public class ResolveMerger extends ThreeWayMerger {

// Worktree entry has to match ours to be considered clean
final boolean isDirty = nonTree(modeF)
&& !(tw.idEqual(T_FILE, T_OURS) && modeO == modeF);
&& !(modeO == modeF && tw.idEqual(T_FILE, T_OURS));
if (isDirty)
failingPaths.put(tw.getPathString(),
MergeFailureReason.DIRTY_WORKTREE);

Loading…
Cancel
Save