From: Zac Medico Date: Tue, 20 May 2008 01:14:43 +0000 (-0000) Subject: Inside vardbapi.aux_get(), do more validation on the cache data to X-Git-Tag: v2.1.5.2~2 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=d440909ffbed04667083b4933c53224293aae8db;p=portage.git Inside vardbapi.aux_get(), do more validation on the cache data to ensure it contains the expected data types. (trunk r10373) svn path=/main/branches/2.1.2/; revision=10374 --- diff --git a/pym/portage.py b/pym/portage.py index 02e31965a..85c65da24 100644 --- a/pym/portage.py +++ b/pym/portage.py @@ -6902,6 +6902,15 @@ class vardbapi(dbapi): cache_incomplete = False cache_mtime = None metadata = None + if pkg_data is not None: + if not isinstance(pkg_data, tuple) or len(pkg_data) != 2: + pkg_data = None + else: + cache_mtime, metadata = pkg_data + if not isinstance(cache_mtime, (long, int)) or \ + not isinstance(metadata, dict): + pkg_data = None + if pkg_data: cache_mtime, metadata = pkg_data cache_valid = cache_mtime == mydir_mtime