summaryrefslogtreecommitdiff
path: root/lib/api/commits.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/api/commits.rb')
-rw-r--r--lib/api/commits.rb8
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/api/commits.rb b/lib/api/commits.rb
index ad2bbf90917..fa99a1a2bc8 100644
--- a/lib/api/commits.rb
+++ b/lib/api/commits.rb
@@ -86,11 +86,15 @@ module API
get ':id/repository/commits', urgency: :low do
not_found! 'Repository' unless user_project.repository_exists?
+ page = params[:page] > 0 ? params[:page] : 1
+ per_page = params[:per_page] > 0 ? params[:per_page] : Kaminari.config.default_per_page
+ limit = [per_page, Kaminari.config.max_per_page].min
+ offset = (page - 1) * limit
+
path = params[:path]
before = params[:until]
after = params[:since]
ref = params[:ref_name].presence || user_project.default_branch unless params[:all]
- offset = (params[:page] - 1) * params[:per_page]
all = params[:all]
with_stats = params[:with_stats]
first_parent = params[:first_parent]
@@ -98,7 +102,7 @@ module API
commits = user_project.repository.commits(ref,
path: path,
- limit: params[:per_page],
+ limit: limit,
offset: offset,
before: before,
after: after,