diff options
Diffstat (limited to 'development/cgit/sort-summary-branches.patch')
-rw-r--r-- | development/cgit/sort-summary-branches.patch | 82 |
1 files changed, 0 insertions, 82 deletions
diff --git a/development/cgit/sort-summary-branches.patch b/development/cgit/sort-summary-branches.patch deleted file mode 100644 index 2b1d96c693..0000000000 --- a/development/cgit/sort-summary-branches.patch +++ /dev/null @@ -1,82 +0,0 @@ -When there are more than `summary-branches` in a repo, the summary page -trimmed the list by age and then sorted them by name. Make sorting by -name optional, though keep it as the default. - -Signed-off-by: Todd Zullinger <tmz at pobox.com> ---- -This was requested by a friend for whom I setup cgit. I don't know if -it's a worthwhile option or not. It's handy for me to avoid having to -patch that install. Beware, my C is weak. If there are egregious -errors in style or content, I won't be shocked or offended to hear -about them. - - cgit.c | 3 +++ - cgit.h | 1 + - cgitrc.5.txt | 5 +++++ - ui-refs.c | 4 +++- - 4 files changed, 12 insertions(+), 1 deletions(-) - -diff --git a/cgit.c b/cgit.c -index e302a7c..ebbcad1 100644 ---- a/cgit.c -+++ b/cgit.c -@@ -233,6 +233,8 @@ void config_cb(const char *name, const char *value) - ctx.cfg.local_time = atoi(value); - else if (!prefixcmp(name, "mimetype.")) - add_mimetype(name + 9, value); -+ else if (!strcmp(name, "summary-branches-sort")) -+ ctx.cfg.summary_branches_sort = xstrdup(value); - else if (!strcmp(name, "include")) - parse_configfile(expand_macros(value), config_cb); - } -@@ -331,6 +333,7 @@ static void prepare_context(struct cgit_context *ctx) - ctx->cfg.script_name = CGIT_SCRIPT_NAME; - ctx->cfg.section = ""; - ctx->cfg.summary_branches = 10; -+ ctx->cfg.summary_branches_sort = "name"; - ctx->cfg.summary_log = 10; - ctx->cfg.summary_tags = 10; - ctx->cfg.max_atom_items = 10; -diff --git a/cgit.h b/cgit.h -index b5f00fc..2f847a1 100644 ---- a/cgit.h -+++ b/cgit.h -@@ -216,6 +216,7 @@ struct cgit_config { - int section_from_path; - int snapshots; - int summary_branches; -+ char *summary_branches_sort; - int summary_log; - int summary_tags; - int ssdiff; -diff --git a/cgitrc.5.txt b/cgitrc.5.txt -index 65b210f..1c8574b 100644 ---- a/cgitrc.5.txt -+++ b/cgitrc.5.txt -@@ -324,6 +324,11 @@ summary-branches:: - Specifies the number of branches to display in the repository "summary" - view. Default value: "10". - -+summary-branches-sort:: -+ Specifies the sort order to use for branches on the summary page, when -+ there are more than `summary-count` branches. Valid options are "name" -+ and "age". Default value: "name". -+ - summary-log:: - Specifies the number of log entries to display in the repository - "summary" view. Default value: "10". -diff --git a/ui-refs.c b/ui-refs.c -index caddfbc..188e63d 100644 ---- a/ui-refs.c -+++ b/ui-refs.c -@@ -197,7 +197,9 @@ void cgit_print_branches(int maxcount) - - if (maxcount < list.count) { - qsort(list.refs, list.count, sizeof(*list.refs), cmp_branch_age); -- qsort(list.refs, maxcount, sizeof(*list.refs), cmp_ref_name); -+ if (ctx.cfg.summary_branches_sort && -+ !strcmp(ctx.cfg.summary_branches_sort, "name")) -+ qsort(list.refs, maxcount, sizeof(*list.refs), cmp_ref_name); - } - - for(i=0; i<maxcount; i++) |