diff --git a/rpmdb/rpmvercmp.c b/rpmdb/rpmvercmp.c index 5ac54dd..1539ae5 100644 --- a/rpmdb/rpmvercmp.c +++ b/rpmdb/rpmvercmp.c @@ -34,8 +34,10 @@ int rpmvercmp(const char * a, const char * b) /* loop through each version segment of str1 and str2 and compare them */ while (*one && *two) { - while (*one && !xisalnum(*one)) one++; - while (*two && !xisalnum(*two)) two++; + if ((*one && !xisalnum(*one)) && (*two && !xisalnum(*two))) { + while (*one && !xisalnum(*one)) one++; + while (*two && !xisalnum(*two)) two++; + } if ( !*one && !*two ) return 0;