[yum-commits] yum/repoMDObject.py
zpavlas at osuosl.org
zpavlas at osuosl.org
Mon Jul 15 12:19:51 UTC 2013
yum/repoMDObject.py | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
New commits:
commit 6a65f13183ee77a32f68c65ce5f47025f84509c7
Author: Zdenek Pavlas <zpavlas at redhat.com>
Date: Thu Jul 11 14:11:06 2013 +0200
RepoMD: fix "distro" tag parsing/dumping
md = yum.repoMDObject.RepoMD('foo', '/path-to/fedora/repomd.xml')
md.dump_xml() => traceback
We parse self.tags['distro'] to a dict, but dump_xml() assumes it's
a list of 2-tuples (API users probably set it that way).
Just handle both.
diff --git a/yum/repoMDObject.py b/yum/repoMDObject.py
index 97256c6..88b82dc 100755
--- a/yum/repoMDObject.py
+++ b/yum/repoMDObject.py
@@ -234,7 +234,14 @@ class RepoMD:
for item in self.tags['repo']:
tag = """ <repo>%s</repo>\n""" % (to_xml(item))
tags += tag
- for (cpeid, item) in self.tags['distro']:
+ distro = self.tags['distro']
+ if isinstance(distro, dict):
+ lst = []
+ for cpeid in sorted(distro):
+ for item in sorted(distro[cpeid]):
+ lst.append((cpeid, item))
+ distro = lst
+ for (cpeid, item) in distro:
if cpeid:
tag = """ <distro cpeid="%s">%s</distro>\n""" % (
to_xml(cpeid, attrib=True), to_xml(item))
More information about the Yum-commits
mailing list