commit:     da259e7cadb4726c283b1961a503509d1fa6751e
Author:     Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Tue May 28 02:14:28 2019 +0000
Commit:     Zac Medico <zmedico <AT> gentoo <DOT> org>
CommitDate: Tue May 28 02:35:37 2019 +0000
URL:        https://gitweb.gentoo.org/proj/portage.git/commit/?id=da259e7c

metadata.xml: filter empty elements (bug 686886)

Bug: https://bugs.gentoo.org/686886
Signed-off-by: Zac Medico <zmedico <AT> gentoo.org>

 lib/portage/xml/metadata.py | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/lib/portage/xml/metadata.py b/lib/portage/xml/metadata.py
index 24888bb47..e479f2dd2 100644
--- a/lib/portage/xml/metadata.py
+++ b/lib/portage/xml/metadata.py
@@ -172,16 +172,16 @@ class _Upstream(object):
 
        def upstream_bugtrackers(self):
                """Retrieve upstream bugtracker location from xml node."""
-               return [e.text for e in self.node.findall('bugs-to')]
+               return [e.text for e in self.node.findall('bugs-to') if e.text]
 
        def upstream_changelogs(self):
                """Retrieve upstream changelog location from xml node."""
-               return [e.text for e in self.node.findall('changelog')]
+               return [e.text for e in self.node.findall('changelog') if 
e.text]
 
        def upstream_documentation(self):
                """Retrieve upstream documentation location from xml node."""
                result = []
-               for elem in self.node.findall('doc'):
+               for elem in (e for e in self.node.findall('doc') if e.text):
                        lang = elem.get('lang')
                        result.append((elem.text, lang))
                return result
@@ -192,7 +192,7 @@ class _Upstream(object):
 
        def upstream_remoteids(self):
                """Retrieve upstream remote ID from xml node."""
-               return [(e.text, e.get('type')) for e in 
self.node.findall('remote-id')]
+               return [(e.text, e.get('type')) for e in 
self.node.findall('remote-id') if e.text]
 
 
 class MetaDataXML(object):
@@ -311,7 +311,7 @@ class MetaDataXML(object):
                                self._descriptions = tuple()
                        else:
                                self._descriptions = tuple(e.text \
-                                       for e in 
self._xml_tree.findall("longdescription"))
+                                       for e in 
self._xml_tree.findall("longdescription") if e.text)
 
                return self._descriptions
 

Reply via email to