projects/guix·blob ruby-team · refs

81 lines · 2.8 KiB

1Fix runtime error when using Python 3.9 or newer.
2
3Taken from upstream:
4https://github.com/fifengine/fifengine/commit/cf295fd98a8fba080f6305c27be56d10ab7ce94d
5
6diff --git a/engine/python/fife/extensions/serializers/simplexml.py b/engine/python/fife/extensions/serializers/simplexml.py
7index c4e10f4f8..d05567936 100644
8--- a/engine/python/fife/extensions/serializers/simplexml.py
9+++ b/engine/python/fife/extensions/serializers/simplexml.py
10@@ -200,7 +200,7 @@ def get(self, module, name, defaultValue=None):
11 #get the module tree: for example find tree under module FIFE
12 moduleTree = self._getModuleTree(module)
13 element = None
14- for e in moduleTree.getchildren():
15+ for e in moduleTree:
16 if e.tag == "Setting" and e.get("name", "") == name:
17 element = e
18 break
19@@ -275,7 +275,7 @@ def set(self, module, name, value, extra_attrs={}):
20 e_type = "str"
21 value = str(value)
22
23- for e in moduleTree.getchildren():
24+ for e in moduleTree:
25 if e.tag != "Setting": continue
26 if e.get("name", "") == name:
27 e.text = value
28@@ -305,7 +305,7 @@ def remove(self, module, name):
29
30 moduleTree = self._getModuleTree(module)
31
32- for e in moduleTree.getchildren():
33+ for e in moduleTree:
34 if e.tag != "Setting": continue
35 if e.get("name", "") == name:
36 moduleTree.remove(e)
37@@ -321,7 +321,7 @@ def getModuleNameList(self):
38 self._initialized = True
39
40 moduleNames = []
41- for c in self._root_element.getchildren():
42+ for c in self._root_element:
43 if c.tag == "Module":
44 name = c.get("name","")
45 if not isinstance(name, basestring):
46@@ -344,7 +344,7 @@ def getAllSettings(self, module):
47
48 # now from the tree read every value, and put the necessary values
49 # to the list
50- for e in moduleTree.getchildren():
51+ for e in moduleTree:
52 if e.tag == "Setting":
53 name = e.get("name", "")
54
55@@ -383,7 +383,7 @@ def _validateTree(self):
56
57 Raises an InvalidFormat exception if there is a format error.
58 """
59- for c in self._root_element.getchildren():
60+ for c in self._root_element:
61 if c.tag != "Module":
62 raise InvalidFormat("Invalid tag in " + self._file + \
63 ". Expected Module, got: " + c.tag)
64@@ -391,7 +391,7 @@ def _validateTree(self):
65 raise InvalidFormat("Invalid tag in " + self._file + \
66 ". Module name is empty.")
67 else:
68- for e in c.getchildren():
69+ for e in c:
70 if e.tag != "Setting":
71 raise InvalidFormat("Invalid tag in " + self._file + \
72 " in module: " + c.tag + \
73@@ -414,7 +414,7 @@ def _getModuleTree(self, module):
74 raise AttributeError("Settings:_getModuleTree: Invalid type for "
75 "module argument.")
76
77- for c in self._root_element.getchildren():
78+ for c in self._root_element:
79 if c.tag == "Module" and c.get("name", "") == module:
80 return c
81