[yum-cvs] yum/yum __init__.py,1.259.2.15,1.259.2.16

Jeremy Katz katzj at linux.duke.edu
Wed Apr 18 21:42:36 UTC 2007


Update of /home/groups/yum/cvs/yum/yum
In directory login1.linux.duke.edu:/tmp/cvs-serv6176/yum

Modified Files:
      Tag: yum-3_0_X
	__init__.py 
Log Message:
fix pattern installs (rh#236950)


Index: __init__.py
===================================================================
RCS file: /home/groups/yum/cvs/yum/yum/__init__.py,v
retrieving revision 1.259.2.15
retrieving revision 1.259.2.16
diff -u -r1.259.2.15 -r1.259.2.16
--- __init__.py	10 Apr 2007 04:01:35 -0000	1.259.2.15
+++ __init__.py	18 Apr 2007 21:42:34 -0000	1.259.2.16
@@ -1729,8 +1729,16 @@
                 pkgs = pkgSack.returnNewestByName()
                 del(pkgSack)
 
+                pkgbyname = {}
+                for pkg in pkgs:
+                    if not pkgbyname.has_key(pkg.name):
+                        pkgbyname[pkg.name] = [ pkg ]
+                    else:
+                        pkgbyname[pkg.name].append(pkg)
+
                 lst = []
-                lst.extend(self.bestPackagesFromList(pkgs))
+                for pkgs in pkgbyname.values():
+                    lst.extend(self.bestPackagesFromList(pkgs))
                 pkgs = lst
 
         if len(pkgs) == 0:
@@ -1741,7 +1749,7 @@
         # FIXME - lots more checking here
         #  - install instead of erase
         #  - better error handling/reporting
-        
+
         tx_return = []
         for po in pkgs:
             if self.tsInfo.exists(pkgtup=po.pkgtup):




More information about the Yum-cvs-commits mailing list