|
|
@@ -190,8 +190,22 @@ int debVersioningSystem::DoCmpVersion(const char *A,const char *AEnd,
|
|
|
dlhs++;
|
|
|
if (drhs != rhs)
|
|
|
drhs++;
|
|
|
-
|
|
|
- return CmpFragment(dlhs,AEnd,drhs,BEnd);
|
|
|
+
|
|
|
+ // no debian revision need to be treated like -0
|
|
|
+ if (*(dlhs-1) == '-' && *(drhs-1) == '-')
|
|
|
+ return CmpFragment(dlhs,AEnd,drhs,BEnd);
|
|
|
+ else if (*(dlhs-1) == '-')
|
|
|
+ {
|
|
|
+ const char* null = "0";
|
|
|
+ return CmpFragment(dlhs,AEnd,null, null+1);
|
|
|
+ }
|
|
|
+ else if (*(drhs-1) == '-')
|
|
|
+ {
|
|
|
+ const char* null = "0";
|
|
|
+ return CmpFragment(null, null+1, drhs, BEnd);
|
|
|
+ }
|
|
|
+ else
|
|
|
+ return 0;
|
|
|
}
|
|
|
/*}}}*/
|
|
|
// debVS::CheckDep - Check a single dependency /*{{{*/
|