Extract array of unsafe XML chars to variable

This commit is contained in:
Stefan Bethke 2016-10-04 18:47:29 +02:00
parent c04a343e29
commit e1d78410c6

View File

@ -1262,16 +1262,18 @@ function OutputStream(options) {
} }
}); });
var xml_unsafe = [
// all C0 characters except tab, newline and return are invalid
0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
0x08, 0x0c, 0x0e, 0x0f,
0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
0xfffe, 0xffff
];
function regexp_safe_literal(code, xml_safe) { function regexp_safe_literal(code, xml_safe) {
if (xml_safe) { if (xml_safe) {
if ([ if (xml_unsafe.indexOf(code) >= 0)
// all C0 characters except tab, newline and return are invalid
0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
0x08, 0x0c, 0x0e, 0x0f,
0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
0xfffe, 0xffff
].indexOf(code) >= 0)
return false; return false;
// C1 (except 0x85) and surrogate pair code points are invalid // C1 (except 0x85) and surrogate pair code points are invalid
if ((code >= 0x7f && code != 0x85 && code <= 0x9f) if ((code >= 0x7f && code != 0x85 && code <= 0x9f)