From 5f116eb7aac88f1c308c12e57bfcc203ab44f309 Mon Sep 17 00:00:00 2001 From: Alexei Sorokin Date: Mon, 22 Aug 2016 23:57:21 +0300 Subject: fix minidom related crashes (#29) --- Mozo/MenuEditor.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/Mozo/MenuEditor.py b/Mozo/MenuEditor.py index 512e7ef..8739d57 100644 --- a/Mozo/MenuEditor.py +++ b/Mozo/MenuEditor.py @@ -536,11 +536,19 @@ class MenuEditor: return found def __addXmlMenuElement(self, element, name, dom): + if isinstance(name, bytes): + name = name.decode('utf-8') + node = dom.createElement('Menu') self.__addXmlTextElement(node, 'Name', name, dom) return element.appendChild(node) def __addXmlTextElement(self, element, name, text, dom): + if isinstance(name, bytes): + name = name.decode('utf-8') + if isinstance(text, bytes): + text = text.decode('utf-8') + for temp in element.childNodes: if temp.nodeName == name: if temp.childNodes[0].nodeValue == text: @@ -551,6 +559,9 @@ class MenuEditor: return element.appendChild(node) def __addXmlFilename(self, element, dom, filename, type = 'Include'): + if isinstance(filename, bytes): + filename = filename.decode('utf-8') + # remove old filenames for node in self.__getXmlNodesByName(['Include', 'Exclude'], element): if node.childNodes[0].nodeName == 'Filename' and node.childNodes[0].childNodes[0].nodeValue == filename: -- cgit v1.2.1