ui-refs: simplify cmp_age logic

The check in parse_user that eventually makes it into committer_date and
tagger_date is:

else if (mode == 3 && isdigit(*p)) {
    *date = atol(p);
    mode++;
}

Since isdigit('-') is always false, date will never be negative. Thus
the sign of this function:

static int cmp_age(int age1, int age2)
{
    if (age1 != 0 && age2 != 0)
        return age2 - age1;

    if (age1 == 0 && age2 == 0)
        return 0;

    if (age1 == 0)
        return +1;

    return -1;
}

Will always be the same as the sign of this function:

static inline int cmp_age(int age1, int age2)
{
    return age2 - age1;
}

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Idea-by: Lukas Fleischer <cgit@cryptocrack.de>
This commit is contained in:
Jason A. Donenfeld 2014-02-26 16:57:15 +01:00
parent 3e9578e9a3
commit 4930611026

View File

@ -11,18 +11,10 @@
#include "html.h" #include "html.h"
#include "ui-shared.h" #include "ui-shared.h"
static int cmp_age(int age1, int age2) static inline int cmp_age(int age1, int age2)
{ {
if (age1 != 0 && age2 != 0) /* age1 and age2 are assumed to be non-negative */
return age2 - age1; return age2 - age1;
if (age1 == 0 && age2 == 0)
return 0;
if (age1 == 0)
return +1;
return -1;
} }
static int cmp_ref_name(const void *a, const void *b) static int cmp_ref_name(const void *a, const void *b)