]> git.saurik.com Git - apt.git/commitdiff
Fixed versioning bug
authorArch Librarian <arch@canonical.com>
Mon, 20 Sep 2004 16:51:45 +0000 (16:51 +0000)
committerArch Librarian <arch@canonical.com>
Mon, 20 Sep 2004 16:51:45 +0000 (16:51 +0000)
Author: jgg
Date: 1998-11-28 20:50:24 GMT
Fixed versioning bug

apt-pkg/version.cc

index cdfad3fd75d206516d38c2d92d2f00d1e7f722e4..4e2e61312ebc9d82f4a1aa759d1dda1bb4479965 100644 (file)
@@ -1,6 +1,6 @@
 // -*- mode: cpp; mode: fold -*-
 // Description                                                         /*{{{*/
-// $Id: version.cc,v 1.6 1998/11/26 23:29:42 jgg Exp $
+// $Id: version.cc,v 1.7 1998/11/28 20:50:24 jgg Exp $
 /* ######################################################################
 
    Version - Version string 
@@ -59,6 +59,7 @@ int pkgVersionCompare(string A,string B)
 static int iVersionCompare(const char *A, const char *AEnd, const char *B,
                           const char *BEnd)
 {
+   // cout << string(A,AEnd) << ',' << string(B,BEnd) << endl;
    if (A >= AEnd && B >= BEnd)
       return 0;
    if (A >= AEnd)
@@ -180,6 +181,11 @@ int pkgVersionCompare(const char *A, const char *AEnd, const char *B,
    const char *drhs = BEnd-1;
    for (;dlhs > lhs && *dlhs != '-'; dlhs--);
    for (;drhs > rhs && *drhs != '-'; drhs--);
+
+   if (dlhs == A)
+      dlhs = AEnd;
+   if (drhs == B)
+      drhs = BEnd;
    
    // Compare the main version
    Res = iVersionCompare(lhs,dlhs,rhs,drhs);
@@ -243,4 +249,3 @@ bool pkgCheckDep(const char *DepVer,const char *PkgVer,int Op)
    return false;
 }
                                                                        /*}}}*/
-