summaryrefslogtreecommitdiff
path: root/ui-refs.c
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2013-04-08 14:57:12 +0000
committerJason A. Donenfeld <Jason@zx2c4.com>2013-04-10 12:48:26 +0000
commit389cc17357e2040c9542d3e085f64a8d2f085e9a (patch)
tree0696cd47fead7576cf03f06eec067b3e5b2c365a /ui-refs.c
parent880223dc845e8b502e753425b889cbb70b73478e (diff)
downloadcgit-389cc17357e2040c9542d3e085f64a8d2f085e9a.tar
cgit-389cc17357e2040c9542d3e085f64a8d2f085e9a.tar.gz
cgit-389cc17357e2040c9542d3e085f64a8d2f085e9a.zip
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)
if (maxcount == 0 || maxcount > list.count)
maxcount = list.count;
- if (maxcount < list.count) {
- qsort(list.refs, list.count, sizeof(*list.refs), cmp_branch_age);
+ qsort(list.refs, list.count, sizeof(*list.refs), cmp_branch_age);
+ if (ctx.repo->branch_sort == 0)
qsort(list.refs, maxcount, sizeof(*list.refs), cmp_ref_name);
- }
for (i = 0; i < maxcount; i++)
print_branch(list.refs[i]);