Dont load diff in compare over 100 commits

5-0-stable
Dmitriy Zaporozhets 2013-03-20 10:19:00 +02:00
parent 72db22d385
commit 6347e9a60b
2 changed files with 14 additions and 1 deletions

View File

@ -89,7 +89,14 @@ class Commit
if first && last
result[:same] = (first.id == last.id)
result[:commits] = project.repo.commits_between(last.id, first.id).map {|c| Commit.new(c)}
result[:diffs] = project.repo.diff(last.id, first.id) rescue []
# Dont load diff for 100+ commits
result[:diffs] = if result[:commits].size > 100
[]
else
project.repo.diff(last.id, first.id) rescue []
end
result[:commit] = Commit.new(first)
end

View File

@ -6,6 +6,12 @@
= render "form"
- if @commits.size > 100
.alert.alert-block
%p
%strong Warning! This comparison include 100+ commits.
%p To prevent performance issue we dont show diff information.
- if @commits.present?
%div.ui-box
%h5.title