--- a/xmltramp.py 2011-01-07 15:27:58.000000000 +1000
+++ b/xmltramp.py 2011-11-02 14:03:07.881107507 +1000
@@ -224,7 +224,9 @@
attrs = dict(attrs)
newprefixes = {}
- for k in self.prefixes.keys(): newprefixes[k] = self.prefixes[k][-1]
+ for k in self.prefixes.keys():
+ if self.prefixes[k]:
+ newprefixes[k] = self.prefixes[k][-1]
self.stack.append(Element(name, attrs, prefixes=newprefixes.copy()))
@@ -357,5 +359,6 @@
assert parse('<x a="<"></x>').__repr__(1) == '<x a="<"></x>'
assert parse('<a xmlns="http://a"><b xmlns="http://b"/></a>').__repr__(1) == '<a xmlns="http://a"><b xmlns="http://b"></b></a>'
+ assert parse('<a><b xmlns="http://b"/><c/></a>').__repr__(1) == '<a><b xmlns="http://b"></b><c></c></a>'
if __name__ == '__main__': unittest()