diff options
author | Zac Medico <zmedico@gentoo.org> | 2006-12-30 03:54:36 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2006-12-30 03:54:36 +0000 |
commit | bab58cf5d43a0289d7c741b4aa62f83737798ea0 (patch) | |
tree | 47da7076de5c2ecdff254f34245cfcb7394c64ce | |
parent | a0c19c9b7b5add9c3795d9ca89edd354751d69d1 (diff) | |
download | portage-bab58cf5d43a0289d7c741b4aa62f83737798ea0.tar.gz portage-bab58cf5d43a0289d7c741b4aa62f83737798ea0.tar.bz2 portage-bab58cf5d43a0289d7c741b4aa62f83737798ea0.zip |
Be slightly more defensive when loading the vdb/blockers caches.
svn path=/main/trunk/; revision=5421
-rwxr-xr-x | bin/emerge | 4 | ||||
-rw-r--r-- | pym/portage.py | 3 |
2 files changed, 4 insertions, 3 deletions
diff --git a/bin/emerge b/bin/emerge index 17a54cbc5..6e7cb5558 100755 --- a/bin/emerge +++ b/bin/emerge @@ -844,8 +844,8 @@ class BlockerCache(DictMixin): cache_valid = self._cache_data and \ isinstance(self._cache_data, dict) and \ self._cache_data.get("version") == self._cache_version and \ - self._cache_data["virtuals"] == self._virtuals and \ - set(self._cache_data["blockers"]) == self._installed_pkgs + self._cache_data.get("virtuals") == self._virtuals and \ + set(self._cache_data.get("blockers", [])) == self._installed_pkgs if cache_valid: for pkg in self._installed_pkgs: if long(self._vardb.aux_get(pkg, ["COUNTER"])[0]) != \ diff --git a/pym/portage.py b/pym/portage.py index 642bc1570..249252bb1 100644 --- a/pym/portage.py +++ b/pym/portage.py @@ -5070,7 +5070,8 @@ class vardbapi(dbapi): pass if not self._aux_cache or \ not isinstance(self._aux_cache, dict) or \ - self._aux_cache.get("version") != self._aux_cache_version: + self._aux_cache.get("version") != self._aux_cache_version or \ + not self._aux_cache.get("packages"): self._aux_cache = {"version":self._aux_cache_version} self._aux_cache["packages"] = {} self._aux_cache["modified"] = False |