]> git.pld-linux.org Git - projects/pld-ftp-admin.git/commitdiff
- use rpmvercmp from rpm's python bindings to get proper version comparision
authorMariusz Mazur <mmazur@pld-linux.org>
Sun, 24 Jul 2005 23:04:54 +0000 (23:04 +0000)
committerMariusz Mazur <mmazur@pld-linux.org>
Sun, 24 Jul 2005 23:04:54 +0000 (23:04 +0000)
Changed files:
    modules/ftptree.py -> 1.22

modules/ftptree.py

index 3c244adc025a0c58f2836c6fb953370ce7616cc8..5f076965b8eda179318057d2028b5c5f0aa5a742 100644 (file)
@@ -1,6 +1,6 @@
 # vi: encoding=utf-8 ts=8 sts=4 sw=4 et
 
-import os, config, string, urllib, re
+import os, config, string, urllib, re, rpm
 from common import fileexists, noarchcachedir
 from baseftptree import BasePkg, BaseFtpTree
 errnum=0
@@ -280,16 +280,12 @@ class FtpTree(BaseFtpTree):
 
     def __find_older_pkgs(self, pkg):
         def filter_older_pkgs(x):
-            checking=x.split('-')
-            if checking[-2]<pkg.version:
+            c=x.split('-')
+            rc = rpm.labelCompare(('0', pkg.version, pkg.release),
+                                                        ('0', c[-2], c[-1]))
+            if rc == 1: # pkg > x
                 return True
-            elif checking[-2]==pkg.version:
-                if checking[-1]<pkg.release:
-                    return True
-                else:
-                    return False
             else:
                 return False
         return filter(filter_older_pkgs, self.__find_other_pkgs(pkg, self))
 
-
This page took 0.085572 seconds and 4 git commands to generate.