1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86
|
From: Markus Koschany <apo@debian.org>
Date: Sat, 20 Feb 2021 00:34:05 +0100
Subject: Fix crash on startup with xml AttributeError.
Bug-Debian: https://bugs.debian.org/978657
Origin: https://github.com/fifengine/fifengine/pull/1078
---
engine/python/fife/extensions/serializers/simplexml.py | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/engine/python/fife/extensions/serializers/simplexml.py b/engine/python/fife/extensions/serializers/simplexml.py
index c4e10f4..d055679 100644
--- a/engine/python/fife/extensions/serializers/simplexml.py
+++ b/engine/python/fife/extensions/serializers/simplexml.py
@@ -200,7 +200,7 @@ class SimpleXMLSerializer(SimpleSerializer):
#get the module tree: for example find tree under module FIFE
moduleTree = self._getModuleTree(module)
element = None
- for e in moduleTree.getchildren():
+ for e in moduleTree:
if e.tag == "Setting" and e.get("name", "") == name:
element = e
break
@@ -275,7 +275,7 @@ class SimpleXMLSerializer(SimpleSerializer):
e_type = "str"
value = str(value)
- for e in moduleTree.getchildren():
+ for e in moduleTree:
if e.tag != "Setting": continue
if e.get("name", "") == name:
e.text = value
@@ -305,7 +305,7 @@ class SimpleXMLSerializer(SimpleSerializer):
moduleTree = self._getModuleTree(module)
- for e in moduleTree.getchildren():
+ for e in moduleTree:
if e.tag != "Setting": continue
if e.get("name", "") == name:
moduleTree.remove(e)
@@ -321,7 +321,7 @@ class SimpleXMLSerializer(SimpleSerializer):
self._initialized = True
moduleNames = []
- for c in self._root_element.getchildren():
+ for c in self._root_element:
if c.tag == "Module":
name = c.get("name","")
if not isinstance(name, basestring):
@@ -344,7 +344,7 @@ class SimpleXMLSerializer(SimpleSerializer):
# now from the tree read every value, and put the necessary values
# to the list
- for e in moduleTree.getchildren():
+ for e in moduleTree:
if e.tag == "Setting":
name = e.get("name", "")
@@ -383,7 +383,7 @@ class SimpleXMLSerializer(SimpleSerializer):
Raises an InvalidFormat exception if there is a format error.
"""
- for c in self._root_element.getchildren():
+ for c in self._root_element:
if c.tag != "Module":
raise InvalidFormat("Invalid tag in " + self._file + \
". Expected Module, got: " + c.tag)
@@ -391,7 +391,7 @@ class SimpleXMLSerializer(SimpleSerializer):
raise InvalidFormat("Invalid tag in " + self._file + \
". Module name is empty.")
else:
- for e in c.getchildren():
+ for e in c:
if e.tag != "Setting":
raise InvalidFormat("Invalid tag in " + self._file + \
" in module: " + c.tag + \
@@ -414,7 +414,7 @@ class SimpleXMLSerializer(SimpleSerializer):
raise AttributeError("Settings:_getModuleTree: Invalid type for "
"module argument.")
- for c in self._root_element.getchildren():
+ for c in self._root_element:
if c.tag == "Module" and c.get("name", "") == module:
return c
|