Plist parser fails on IE8 when there's no DTD header in XML
Reported by Farcaller | February 9th, 2009 @ 10:09 AM
I'm trying to parse a XML string (provided from xslt conversion) in IE8. It doesn't contain DTD header, but starts directly with "<?xml version".
First problem I encountered was that Objective-J.js at line 844 removes 6 characters from the start making xml document not a xml document any more, thus I changed it to read:
XMLNode.loadXML(XMLNodeOrData.string);
at this point XMLNode seemed to load my string without any problems, but it dies on the next loop:
while (((String(XMLNode.nodeName)) == XML_DOCUMENT) || ((String(XMLNode.nodeName)) == XML_XML))
XMLNode = (XMLNode.firstChild);
first node (XMLNode) is XML_DOCUMENT. It's firstChild is XML_XML. But plist is not firstChild of XML_XML but rather nextSibling.
if I set XMLNode to plist node it continues from this point without any problem.
PS: WebKit handles same xml string without any problem (tested on Chrome, Safari, nightly WebKit).
Comments and changes to this ticket
-
Farcaller February 9th, 2009 @ 10:46 AM
- Tag changed from ie8, objective-j, parser, plist to ie8, objective-j, parser, patch, plist
Patch to fix the issue. Tested on IE8 (in both IE8 and IE7 modes).
Please Sign in or create a free account to add a new ticket.
With your very own profile, you can contribute to projects, track your activity, watch tickets, receive and update tickets through your email and much more.
Create your profile
Help contribute to this project by taking a few moments to create your personal profile. Create your profile ยป
The Cappuccino Web Framework, including AppKit, Foundation, and Objective-J.