doc = _get_document_element(node)
frag = doc.createElement("temporary-fragment") # ugh
- for child in node.childNodes:
- frag.appendChild(child)
-
- for child in node.childNodes:
+ while not node.firstChild is None:
+ child = node.firstChild
node.removeChild(child)
+ frag.appendChild(child)
for instance in obj:
newnode = frag.cloneNode(True)
# remove all the <fragment> tags
+ children_to_remove = []
for child in node.childNodes:
if isinstance(child, xml.dom.minidom.Element) and child.tagName == 'temporary-fragment':
- for child2 in child.childNodes:
+ while not child.firstChild is None:
+ child2 = child.firstChild
+ child.removeChild(child2)
node.appendChild(child2)
- node.removeChild(child)
+ children_to_remove.append(child)
+
+ for child in children_to_remove:
+ node.removeChild(child)
if clean:
_clean(node)