aboutsummaryrefslogtreecommitdiffstats
path: root/ui-refs.c
diff options
context:
space:
mode:
authorGravatar Jason A. Donenfeld <Jason@zx2c4.com>2013-04-08 23:57:12 (JST)
committerGravatar Jason A. Donenfeld <Jason@zx2c4.com>2013-04-10 21:48:26 (JST)
commit389cc17357e2040c9542d3e085f64a8d2f085e9a (patch)
tree0696cd47fead7576cf03f06eec067b3e5b2c365a /ui-refs.c
parent880223dc845e8b502e753425b889cbb70b73478e (diff)
downloadcgit-389cc17357e2040c9542d3e085f64a8d2f085e9a.zip
cgit-389cc17357e2040c9542d3e085f64a8d2f085e9a.tar.gz
Add branch-sort and repo.branch-sort options.
When set to "name", branches are sorted by name, which is the current default. When set to "age", branches are sorted by the age of the repository. This feature was requested by Konstantin Ryabitsev for use on kernel.org. Proposed-by: Konstantin Ryabitsev <mricon@kernel.org>
Diffstat (limited to 'ui-refs.c')
-rw-r--r--ui-refs.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/ui-refs.c b/ui-refs.c
index 3fbaad0..0ae0612 100644
--- a/ui-refs.c
+++ b/ui-refs.c
@@ -197,10 +197,9 @@ void cgit_print_branches(int maxcount)
197 if (maxcount == 0 || maxcount > list.count) 197 if (maxcount == 0 || maxcount > list.count)
198 maxcount = list.count; 198 maxcount = list.count;
199 199
200 if (maxcount < list.count) { 200 qsort(list.refs, list.count, sizeof(*list.refs), cmp_branch_age);
201 qsort(list.refs, list.count, sizeof(*list.refs), cmp_branch_age); 201 if (ctx.repo->branch_sort == 0)
202 qsort(list.refs, maxcount, sizeof(*list.refs), cmp_ref_name); 202 qsort(list.refs, maxcount, sizeof(*list.refs), cmp_ref_name);
203 }
204 203
205 for (i = 0; i < maxcount; i++) 204 for (i = 0; i < maxcount; i++)
206 print_branch(list.refs[i]); 205 print_branch(list.refs[i]);