diff options
author | Sato Hiroyuki <sathiroyuki@gmail.com> | 2013-02-05 09:59:13 +0400 |
---|---|---|
committer | Sato Hiroyuki <sathiroyuki@gmail.com> | 2013-02-05 14:08:25 +0400 |
commit | df85c9c06ae3d687bb6ec2f2d11a8ae71fa8ed5f (patch) | |
tree | fa956caa14c777831e2692c6e4c3d42fce859536 | |
parent | 8ff5cf9cd5193b7135f53de3b62dd50bcbbfc2dc (diff) |
Fix bug when it has been switched to tag.
-rw-r--r-- | lib/extracts_path.rb | 5 | ||||
-rw-r--r-- | lib/gitlab/graph/json_builder.rb | 2 |
2 files changed, 5 insertions, 2 deletions
diff --git a/lib/extracts_path.rb b/lib/extracts_path.rb index 976ac018204..fb595e18b24 100644 --- a/lib/extracts_path.rb +++ b/lib/extracts_path.rb @@ -117,7 +117,10 @@ module ExtractsPath @id = File.join(@ref, @path) - @commit = CommitDecorator.decorate(@project.repository.commit(@ref)) + # It is used "@project.repository.commits(@ref, @path, 1, 0)", + # because "@project.repository.commit(@ref)" returns wrong commit when @ref is tag name. + commits = @project.repository.commits(@ref, @path, 1, 0) + @commit = CommitDecorator.decorate(commits.first) @tree = Tree.new(@commit.tree, @ref, @path) @tree = TreeDecorator.new(@tree) diff --git a/lib/gitlab/graph/json_builder.rb b/lib/gitlab/graph/json_builder.rb index 05e16f3d683..8f31c820be1 100644 --- a/lib/gitlab/graph/json_builder.rb +++ b/lib/gitlab/graph/json_builder.rb @@ -113,7 +113,7 @@ module Gitlab def include_ref?(commit) heads = commit.refs.select do |ref| - ref.is_a?(Grit::Head) or ref.is_a?(Grit::Remote) + ref.is_a?(Grit::Head) or ref.is_a?(Grit::Remote) or ref.is_a?(Grit::Tag) end heads.map! do |head| |