From: Zac Medico Date: Sat, 7 Aug 2010 00:25:41 +0000 (-0700) Subject: Bug #331429 - Fix breakage in package.properties and package.license X-Git-Tag: v2.2_rc68~370 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=ac6ee1217d2309cbc2ab4af893f57fc5b76eaeb2;p=portage.git Bug #331429 - Fix breakage in package.properties and package.license handling due to behavior of ExtendedAtomDict.get(). We need to use setdefault() when updating ExtendedAtomDict like this. --- diff --git a/pym/portage/package/ebuild/config.py b/pym/portage/package/ebuild/config.py index ba3e91c97..ff9894d8e 100644 --- a/pym/portage/package/ebuild/config.py +++ b/pym/portage/package/ebuild/config.py @@ -868,12 +868,8 @@ class config(object): else: self.configdict["conf"]["ACCEPT_LICENSE"] = " ".join(v) for k, v in licdict.items(): - cp = k.cp - cp_dict = self._plicensedict.get(cp) - if not cp_dict: - cp_dict = {} - self._plicensedict[cp] = cp_dict - cp_dict[k] = self.expandLicenseTokens(v) + self._plicensedict.setdefault(k.cp, {})[k] = \ + self.expandLicenseTokens(v) #package.properties propdict = grabdict_package(os.path.join( @@ -885,12 +881,7 @@ class config(object): else: self.configdict["conf"]["ACCEPT_PROPERTIES"] = " ".join(v) for k, v in propdict.items(): - cp = k.cp - cp_dict = self._ppropertiesdict.get(cp) - if not cp_dict: - cp_dict = {} - self._ppropertiesdict[cp] = cp_dict - cp_dict[k] = v + self._ppropertiesdict.setdefault(k.cp, {})[k] = v self._local_repo_configs = {} self._local_repo_conf_path = \