X-Git-Url: https://pd.if.org/git/?a=blobdiff_plain;f=lib%2Fvercmp.c;h=16cf1cdc4eab48ab1f4b89b4cac0178d23b4a858;hb=e65e12081df227971bcf449ebcb230e1c980649b;hp=91d536305cdcf97d6c84d0b32343a1f794d69c73;hpb=8db0580dab2fa716c486acbf34e459a56427acc3;p=zpackage diff --git a/lib/vercmp.c b/lib/vercmp.c index 91d5363..16cf1cd 100644 --- a/lib/vercmp.c +++ b/lib/vercmp.c @@ -52,6 +52,9 @@ static int ver_cmp(struct ver *a, struct ver *b) { } if (a->type == 1) { int cmp; + if (a->s && ! b->s) return 1; + if (b->s && ! a->s) return -1; + if (!b->s && ! a->s) return 0; cmp = strcmp(a->s, b->s); if (cmp == 0) { return 0; @@ -127,6 +130,9 @@ int zpm_vercmp(const char *vsa, const char *vsb) { } return an < bn ? -1 : 1; } + if (an == 0 && bn == 0) { + return 0; + } cmp = ver_cmp(&a, &b); if (cmp != 0) { return cmp;