diff options
-rw-r--r-- | app/models/merge_request_diff.rb | 21 |
1 files changed, 6 insertions, 15 deletions
diff --git a/app/models/merge_request_diff.rb b/app/models/merge_request_diff.rb index d3c07555b0c..248fa18353e 100644 --- a/app/models/merge_request_diff.rb +++ b/app/models/merge_request_diff.rb @@ -83,11 +83,7 @@ class MergeRequestDiff < ActiveRecord::Base # Collect array of Git::Commit objects # between target and source branches def unmerged_commits - commits = if merge_request.for_fork? - compare_action.commits - else - repository.commits_between(target_branch, source_branch) - end + commits = compare_result.commits if commits.present? commits = Commit.decorate(commits). @@ -147,12 +143,7 @@ class MergeRequestDiff < ActiveRecord::Base # Collect array of Git::Diff objects # between target and source branches def unmerged_diffs - diffs = if merge_request.for_fork? - compare_action.diffs - else - Gitlab::Git::Diff.between(repository, source_branch, target_branch) - end - + diffs = compare_result.diffs diffs ||= [] diffs rescue Gitlab::Git::Diff::TimeoutError => ex @@ -166,13 +157,13 @@ class MergeRequestDiff < ActiveRecord::Base private - def compare_action - Gitlab::Satellite::CompareAction.new( + def compare_result + @compare_result ||= CompareService.new.execute( merge_request.author, + merge_request.source_project, + merge_request.source_branch, merge_request.target_project, merge_request.target_branch, - merge_request.source_project, - merge_request.source_branch ) end end |