fix obsoletes ignored version issue
authorGui Chen <gui.chen@intel.com>
Wed, 5 Mar 2014 05:32:31 +0000 (00:32 -0500)
committerGui Chen <gui.chen@intel.com>
Wed, 5 Mar 2014 06:47:22 +0000 (08:47 +0200)
Fixes: #1382

Change-Id: I663a80703ba02091f87fa9aca23be9ec5ba0d1b9
Signed-off-by: Gui Chen <gui.chen@intel.com>
plugins/backend/zypppkgmgr.py

index 87b33b3..b323da9 100644 (file)
@@ -127,7 +127,7 @@ class Zypp(BackendPlugin):
     def whatObsolete(self, pkg):
         query = zypp.PoolQuery()
         query.addKind(zypp.ResKind.package)
-        query.addAttribute(zypp.SolvAttr.obsoletes, pkg)
+        query.addDependency(zypp.SolvAttr.obsoletes, pkg.name(), pkg.edition())
         query.setMatchExact()
         for pi in query.queryResults(self.Z.pool()):
             return pi
@@ -233,7 +233,7 @@ class Zypp(BackendPlugin):
                 continue
 
             found = True
-            obspkg = self.whatObsolete(item.name())
+            obspkg = self.whatObsolete(item)
             if arch:
                 if arch == str(item.arch()):
                     item.status().setToBeInstalled (zypp.ResStatus.USER)
@@ -261,7 +261,7 @@ class Zypp(BackendPlugin):
                     continue
 
                 found = True
-                obspkg = self.whatObsolete(item.name())
+                obspkg = self.whatObsolete(item)
                 markPoolItem(obspkg, pitem)
                 break