summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app/models/merge_request_diff.rb21
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