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; |
