From 74e48d07971958fe3c7903d114b20a188cc8bbc3 Mon Sep 17 00:00:00 2001 From: MilhouseVH Date: Thu, 24 Oct 2019 22:51:28 +0100 Subject: [PATCH] kodi/xml_merge.py: make python3 compatible; bug fixes * decode byte object * f was not visible in exception, resulting in an unhanled second exception * fix indenting --- packages/mediacenter/kodi/scripts/xml_merge.py | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediacenter/kodi/scripts/xml_merge.py b/packages/mediacenter/kodi/scripts/xml_merge.py index 851954094d..ccb1f14ebe 100755 --- a/packages/mediacenter/kodi/scripts/xml_merge.py +++ b/packages/mediacenter/kodi/scripts/xml_merge.py @@ -18,17 +18,19 @@ class hashabledict(dict): class XMLCombiner(object): def __init__(self, filenames): if len(filenames) == 0: - raise Exception('No filenames!') + raise Exception('No filenames!') try: - self.roots = [et.parse(f).getroot() for f in filenames] + self.roots = [] + for f in filenames: + self.roots.append(et.parse(f).getroot()) except xml.etree.ElementTree.ParseError: - printerr("ERROR: Unable to parse XML file %s" % f) - raise + printerr("ERROR: Unable to parse XML file %s" % f) + raise def prettyPrint(self, etree_xml): minidom = xml.dom.minidom.parseString(et.tostring(etree_xml)) - return "\n".join([line for line in minidom.toprettyxml(indent=" ", encoding="utf-8").split('\n') if line.strip() != ""]) + return "\n".join([line for line in minidom.toprettyxml(indent=" ", encoding="utf-8").decode('utf-8').split('\n') if line.strip() != ""]) def combine(self): for r in self.roots[1:]: