diff options
Diffstat (limited to 'development/cgit/patches/0006-ui-repolist-properly-sort-by-age.patch')
-rw-r--r-- | development/cgit/patches/0006-ui-repolist-properly-sort-by-age.patch | 78 |
1 files changed, 0 insertions, 78 deletions
diff --git a/development/cgit/patches/0006-ui-repolist-properly-sort-by-age.patch b/development/cgit/patches/0006-ui-repolist-properly-sort-by-age.patch deleted file mode 100644 index e48d97f2db..0000000000 --- a/development/cgit/patches/0006-ui-repolist-properly-sort-by-age.patch +++ /dev/null @@ -1,78 +0,0 @@ -From 87c47488d02fcace4da0d468cd9ddd1651b7949e Mon Sep 17 00:00:00 2001 -From: "Jason A. Donenfeld" <Jason@zx2c4.com> -Date: Thu, 30 Mar 2017 13:19:50 +0200 -Subject: [PATCH 06/15] ui-repolist: properly sort by age - -When empty repos exist, comparing them against an existing repo with a -good mtime might, with particular qsort implementations, not sort -correctly, because of this brokenness: - - if (get_repo_modtime(r1, &t) && get_repo_modtime(r2, &t)) - -However, sorting by the age column works as expected, so anyway, to tidy -things up, we simply reuse that function. - -Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com> ---- - ui-repolist.c | 38 +++++++++++++++++--------------------- - 1 file changed, 17 insertions(+), 21 deletions(-) - -diff --git a/ui-repolist.c b/ui-repolist.c -index b57ea60..20a4f56 100644 ---- a/ui-repolist.c -+++ b/ui-repolist.c -@@ -184,27 +184,6 @@ static int cmp(const char *s1, const char *s2) - return 0; - } - --static int sort_section(const void *a, const void *b) --{ -- const struct cgit_repo *r1 = a; -- const struct cgit_repo *r2 = b; -- int result; -- time_t t; -- -- result = cmp(r1->section, r2->section); -- if (!result) { -- if (!strcmp(ctx.cfg.repository_sort, "age")) { -- // get_repo_modtime caches the value in r->mtime, so we don't -- // have to worry about inefficiencies here. -- if (get_repo_modtime(r1, &t) && get_repo_modtime(r2, &t)) -- result = r2->mtime - r1->mtime; -- } -- if (!result) -- result = cmp(r1->name, r2->name); -- } -- return result; --} -- - static int sort_name(const void *a, const void *b) - { - const struct cgit_repo *r1 = a; -@@ -241,6 +220,23 @@ static int sort_idle(const void *a, const void *b) - return t2 - t1; - } - -+static int sort_section(const void *a, const void *b) -+{ -+ const struct cgit_repo *r1 = a; -+ const struct cgit_repo *r2 = b; -+ int result; -+ time_t t; -+ -+ result = cmp(r1->section, r2->section); -+ if (!result) { -+ if (!strcmp(ctx.cfg.repository_sort, "age")) -+ result = sort_idle(r1, r2); -+ if (!result) -+ result = cmp(r1->name, r2->name); -+ } -+ return result; -+} -+ - struct sortcolumn { - const char *name; - int (*fn)(const void *a, const void *b); --- -2.14.1 - |