Closed Bug 478905 Opened 17 years ago Closed 13 years ago

E4X: XML parsing of string with Unicode character U2028 fails with "illegal XML character" message

Categories

(Core :: JavaScript Engine, defect)

x86
Windows XP
defect
Not set
normal

Tracking

()

RESOLVED WONTFIX

People

(Reporter: martin.honnen, Unassigned)

Details

Attachments

(2 files)

When using new XML(xmlString) with certain xmlStrings containing the Unicode character U2028 Spidermonkey fails to parse the string and gives an "illegal XML character" error. The same string however can be parsed just fine with DOMParser for instance so the error message is not correct. The problem does not occur with any XML string containing that character but only with certain strings. Tested with Firefox 3.0.6 as well as with a current nightly trunk Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2a1pre) Gecko/20090217 Minefield/3.2a1pre I will upload a test case next.
Attached file JavaScript test case
The HTML test case references the JavaScript test case https://bugzilla.mozilla.org/attachment.cgi?id=362736 and shows the error in Mozilla's error console. Furthermore it uses DOMParser to parse the string that new XML() fails to parse to show that it is well-formed XML.
\u2028 is LINE_SEPARATOR (2029 is PARA_SEPARATOR). ECMA-262 Edition 3 defines these as line break characters. I wonder if that's relevant; the E4X XML lexer is integrated with the JS lexer. /be
\u2029 triggers the bug too.
e4x support has been removed (bug 788293).
Status: NEW → RESOLVED
Closed: 13 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: