19 lines
818 B
Diff
19 lines
818 B
Diff
diff -pur rpm-4.4.4/lib/rpmvercmp.c rpm-4.4.4-qilinux/lib/rpmvercmp.c
|
|
--- rpm-4.4.4/lib/rpmvercmp.c 2005-07-04 04:32:22.000000000 +0200
|
|
+++ rpm-4.4.4-qilinux/lib/rpmvercmp.c 2006-01-04 16:04:28.000000000 +0100
|
|
@@ -108,6 +108,14 @@ int rpmvercmp(const char * a, const char
|
|
/*@-boundsread@*/
|
|
if ((!*one) && (!*two)) return 0;
|
|
|
|
+ /* take care of rc, alpha, and beta version numbers */
|
|
+ while (*one && *one == '-') one++;
|
|
+ if (!strncmp(one, "rc", 2) || !strncmp(one, "alpha", 5) || !strncmp(one, "beta", 4))
|
|
+ return -1;
|
|
+ while (*two && *two == '-') two++;
|
|
+ if (!strncmp(two, "rc", 2) || !strncmp(two, "alpha", 5) || !strncmp(two, "beta", 4))
|
|
+ return +1;
|
|
+
|
|
/* whichever version still has characters left over wins */
|
|
if (!*one) return -1; else return 1;
|
|
/*@=boundsread@*/
|