Commit 9c6c1878 authored by Sergey Toshin's avatar Sergey Toshin Committed by Skylot

Adds define of unknown NSes

parent cb23b657
...@@ -309,11 +309,24 @@ public class BinaryXMLParser extends CommonBinaryParser { ...@@ -309,11 +309,24 @@ public class BinaryXMLParser extends CommonBinaryParser {
} }
String attrName = nsMap.get(attrUrl); String attrName = nsMap.get(attrUrl);
if (attrName == null) { if (attrName == null) {
return "NOT_FOUND_NS_0x" + Integer.toHexString(attributeNS) + "_" + attrUrl; attrName = generateNameForNS(attrUrl);
} }
return attrName; return attrName;
} }
private String generateNameForNS(String attrUrl) {
for(int i = 1; ; i++) {
String attrName = "ns" + i;
if(!nsMap.containsValue(attrName)) {
// do not add generated value to nsMap
// because attrUrl might be used in a neighbor element, but never defined
writer.add("xmlns:").add(attrName)
.add("=\"").add(attrUrl).add("\"");
return attrName;
}
}
}
private String getAttributeName(int id) { private String getAttributeName(int id) {
String str = getString(id); String str = getString(id);
if (str == null || str.isEmpty()) { if (str == null || str.isEmpty()) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment