aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--org.eclipse.jgit/src/org/eclipse/jgit/blame/BlameGenerator.java38
-rw-r--r--org.eclipse.jgit/src/org/eclipse/jgit/blame/Candidate.java7
2 files changed, 3 insertions, 42 deletions
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/blame/BlameGenerator.java b/org.eclipse.jgit/src/org/eclipse/jgit/blame/BlameGenerator.java
index a54ef56697..8961537ce5 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/blame/BlameGenerator.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/blame/BlameGenerator.java
@@ -73,7 +73,6 @@ import org.eclipse.jgit.revwalk.RevCommit;
import org.eclipse.jgit.revwalk.RevFlag;
import org.eclipse.jgit.revwalk.RevWalk;
import org.eclipse.jgit.treewalk.TreeWalk;
-import org.eclipse.jgit.treewalk.filter.AndTreeFilter;
import org.eclipse.jgit.treewalk.filter.PathFilter;
import org.eclipse.jgit.treewalk.filter.TreeFilter;
@@ -601,16 +600,7 @@ public class BlameGenerator {
return split(n.getNextCandidate(0), n);
revPool.parseHeaders(parent);
- if (n.sourceCommit != null && n.recursivePath) {
- treeWalk.setFilter(AndTreeFilter.create(n.sourcePath, ID_DIFF));
- treeWalk.reset(n.sourceCommit.getTree(), parent.getTree());
- if (!treeWalk.next())
- return blameEntireRegionOnParent(n, parent);
- if (isFile(treeWalk.getRawMode(1))) {
- treeWalk.getObjectId(idBuf, 1);
- return splitBlameWithParent(n, parent);
- }
- } else if (find(parent, n.sourcePath)) {
+ if (find(parent, n.sourcePath)) {
if (idBuf.equals(n.sourceBlob))
return blameEntireRegionOnParent(n, parent);
return splitBlameWithParent(n, parent);
@@ -627,7 +617,7 @@ public class BlameGenerator {
// A 100% rename without any content change can also
// skip directly to the parent.
n.sourceCommit = parent;
- n.setSourcePath(PathFilter.create(r.getOldPath()));
+ n.sourcePath = PathFilter.create(r.getOldPath());
push(n);
return false;
}
@@ -720,7 +710,7 @@ public class BlameGenerator {
// have an exact content match. For performance reasons
// we choose to follow the one parent over trying to do
// possibly both parents.
- n.setSourcePath(PathFilter.create(r.getOldPath()));
+ n.sourcePath = PathFilter.create(r.getOldPath());
return blameEntireRegionOnParent(n, parent);
}
@@ -988,26 +978,4 @@ public class BlameGenerator {
return ent.getChangeType() == ChangeType.RENAME
|| ent.getChangeType() == ChangeType.COPY;
}
-
- private static final TreeFilter ID_DIFF = new TreeFilter() {
- @Override
- public boolean include(TreeWalk tw) {
- return !tw.idEqual(0, 1);
- }
-
- @Override
- public boolean shouldBeRecursive() {
- return false;
- }
-
- @Override
- public TreeFilter clone() {
- return this;
- }
-
- @Override
- public String toString() {
- return "ID_DIFF"; //$NON-NLS-1$
- }
- };
}
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/blame/Candidate.java b/org.eclipse.jgit/src/org/eclipse/jgit/blame/Candidate.java
index c7c34f0a3a..72d8abe1fc 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/blame/Candidate.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/blame/Candidate.java
@@ -82,7 +82,6 @@ class Candidate {
/** Path of the candidate file in {@link #sourceCommit}. */
PathFilter sourcePath;
- boolean recursivePath;
/** Unique name of the candidate blob in {@link #sourceCommit}. */
ObjectId sourceBlob;
@@ -113,7 +112,6 @@ class Candidate {
Candidate(RevCommit commit, PathFilter path) {
sourceCommit = commit;
sourcePath = path;
- recursivePath = path.shouldBeRecursive();
}
void beginResult(RevWalk rw) throws MissingObjectException, IOException {
@@ -152,11 +150,6 @@ class Candidate {
return sourceCommit.getAuthorIdent();
}
- void setSourcePath(PathFilter path) {
- sourcePath = path;
- recursivePath = path.shouldBeRecursive();
- }
-
Candidate create(RevCommit commit, PathFilter path) {
return new Candidate(commit, path);
}