diff options
-rw-r--r-- | ui-summary.c | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/ui-summary.c b/ui-summary.c index 3d5eda8..05170cc 100644 --- a/ui-summary.c +++ b/ui-summary.c | |||
@@ -10,23 +10,28 @@ | |||
10 | 10 | ||
11 | static int header; | 11 | static int header; |
12 | 12 | ||
13 | static int cmp_tag_age(void *a, void *b) | 13 | static int cmp_age(int age1, int age2) |
14 | { | 14 | { |
15 | struct refinfo *r1 = *(struct refinfo **)a; | 15 | if (age1 != 0 && age2 != 0) |
16 | struct refinfo *r2 = *(struct refinfo **)b; | 16 | return age2 - age1; |
17 | |||
18 | if (r1->tag->tagger_date != 0 && r2->tag->tagger_date != 0) | ||
19 | return r2->tag->tagger_date - r1->tag->tagger_date; | ||
20 | 17 | ||
21 | if (r1->tag->tagger_date == 0 && r2->tag->tagger_date == 0) | 18 | if (age1 == 0 && age2 == 0) |
22 | return 0; | 19 | return 0; |
23 | 20 | ||
24 | if (r1 == 0) | 21 | if (age1 == 0) |
25 | return +1; | 22 | return +1; |
26 | 23 | ||
27 | return -1; | 24 | return -1; |
28 | } | 25 | } |
29 | 26 | ||
27 | static int cmp_tag_age(const void *a, const void *b) | ||
28 | { | ||
29 | struct refinfo *r1 = *(struct refinfo **)a; | ||
30 | struct refinfo *r2 = *(struct refinfo **)b; | ||
31 | |||
32 | return cmp_age(r1->tag->tagger_date, r2->tag->tagger_date); | ||
33 | } | ||
34 | |||
30 | static void cgit_print_branch(struct refinfo *ref) | 35 | static void cgit_print_branch(struct refinfo *ref) |
31 | { | 36 | { |
32 | struct commit *commit; | 37 | struct commit *commit; |