From 0e82fc1ffee99770e383f661a46cb00a3793961d Mon Sep 17 00:00:00 2001 From: Sebastian Sdorra Date: Thu, 15 Sep 2011 14:04:38 +0200 Subject: [PATCH] fix git blame revision --- .../java/sonia/scm/repository/GitBlameViewer.java | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/scm-plugins/scm-git-plugin/src/main/java/sonia/scm/repository/GitBlameViewer.java b/scm-plugins/scm-git-plugin/src/main/java/sonia/scm/repository/GitBlameViewer.java index 2a9f2edb43..3bf616efab 100644 --- a/scm-plugins/scm-git-plugin/src/main/java/sonia/scm/repository/GitBlameViewer.java +++ b/scm-plugins/scm-git-plugin/src/main/java/sonia/scm/repository/GitBlameViewer.java @@ -53,6 +53,8 @@ import java.io.IOException; import java.util.ArrayList; import java.util.List; +import org.eclipse.jgit.lib.ObjectId; +import sonia.scm.util.Util; /** * Class description @@ -96,6 +98,8 @@ public class GitBlameViewer implements BlameViewer @Override public BlamePagingResult getBlame(String revision, String path) { + AssertUtil.assertIsNotEmpty(path); + BlameResult blameResult = null; BlamePagingResult blamePagingResult = null; org.eclipse.jgit.lib.Repository gr = null; @@ -108,11 +112,11 @@ public class GitBlameViewer implements BlameViewer git = new Git(gr); BlameCommand blame = git.blame(); - - if (path != null) - { - blame.setFilePath(path); - } + blame.setFilePath(path); + + ObjectId revId = GitUtil.getRevisionId(gr, revision); + blame.setStartCommit(revId); + blameResult = blame.call(); AssertUtil.assertIsNotNull(blameResult);