diff options
-rw-r--r-- | pym/portage/dbapi/bintree.py | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/pym/portage/dbapi/bintree.py b/pym/portage/dbapi/bintree.py index caa17699f..8a7112fde 100644 --- a/pym/portage/dbapi/bintree.py +++ b/pym/portage/dbapi/bintree.py @@ -943,6 +943,12 @@ class binarytree(object): if not self._pkgindex_version_supported(pkgindex): pkgindex = self._new_pkgindex() + # Discard remote metadata to ensure that _pkgindex_entry + # gets the local metadata. This also updates state for future + # isremote calls. + if self._remotepkgs is not None: + self._remotepkgs.pop(cpv, None) + try: d = self._pkgindex_entry(cpv) except portage.exception.InvalidDependString: @@ -981,11 +987,6 @@ class binarytree(object): if pkgindex_lock: unlockfile(pkgindex_lock) - if self._remotepkgs is not None: - # When a remote package is downloaded and injected, - # update state so self.isremote() returns False. - self._remotepkgs.pop(cpv, None) - def _pkgindex_entry(self, cpv): """ Performs checksums and evaluates USE flag conditionals. |