mshtml/msxml3: Add XMLSerializer, embedded XML declaration handling
This patchset adds XMLSerializer support and fixes several compatibility issues for Adobe Creative Cloud installer and similar applications.
XMLSerializer implementation (mshtml)
- Implements the
IXMLSerializerinterface withserializeToString()method - Allows JavaScript to serialize DOM elements to XML strings
Embedded XML declaration handling (msxml3)
- Adds CDATA wrapping for embedded
<?xml?>declarations inside elements - Windows MSXML tolerates these nested declarations but libxml2 rejects them
- The preprocessing step wraps problematic content in CDATA sections before parsing
DISPATCH_METHOD|DISPATCH_PROPERTYGET fixes (jscript/mshtml) This was already done !10004 (merged)
Also added tests for XMLSerializer (empty elements, text nodes, special characters, nested elements, multiple children), embedded XML declaration handling (multiple declarations, deeply nested, encoding attributes, self-closing elements) and DISPATCH_METHOD|DISPATCH_PROPERTYGET behavior in both quirks and standards modes
- Filip Bakreski
Edited by Phiality