From 23926b159418c22f053f74b217e1a6378816739c Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Thu, 26 Aug 2010 20:21:02 -0700 Subject: Bug #334365 - When depgraph.display_problems() shows the message about masked installed packages, customize the InvalidDependString display to show the path of the *DEPEND file that contains the invalid dependency. --- pym/_emerge/FakeVartree.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'pym/_emerge/FakeVartree.py') diff --git a/pym/_emerge/FakeVartree.py b/pym/_emerge/FakeVartree.py index c74092d55..1d6a1aa67 100644 --- a/pym/_emerge/FakeVartree.py +++ b/pym/_emerge/FakeVartree.py @@ -7,12 +7,20 @@ import portage from portage import os from _emerge.Package import Package from _emerge.PackageVirtualDbapi import PackageVirtualDbapi +from portage.const import VDB_PATH from portage.dbapi.vartree import vartree from portage.update import grab_updates, parse_updates, update_dbentries if sys.hexversion >= 0x3000000: long = int +class FakeVardbapi(PackageVirtualDbapi): + def getpath(self, cpv, filename=None): + path = os.path.join(self.settings['EROOT'], VDB_PATH, cpv) + if filename is not None: + path =os.path.join(path, filename) + return path + class FakeVartree(vartree): """This is implements an in-memory copy of a vartree instance that provides all the interfaces required for use by the depgraph. The vardb is locked @@ -37,7 +45,7 @@ class FakeVartree(vartree): mykeys.append("_mtime_") self._db_keys = mykeys self._pkg_cache = pkg_cache - self.dbapi = PackageVirtualDbapi(real_vartree.settings) + self.dbapi = FakeVardbapi(real_vartree.settings) # Intialize variables needed for lazy cache pulls of the live ebuild # metadata. This ensures that the vardb lock is released ASAP, without -- cgit v1.2.3-1-g7c22