[PATCH] Don't force parser encoding when loading from file
Nikolay Sivov
nsivov at codeweavers.com
Sun Jun 20 04:47:39 CDT 2010
---
dlls/msxml3/domdoc.c | 10 +++++-----
dlls/msxml3/node.c | 1 +
2 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/dlls/msxml3/domdoc.c b/dlls/msxml3/domdoc.c
index 34be70c..4808e4e 100644
--- a/dlls/msxml3/domdoc.c
+++ b/dlls/msxml3/domdoc.c
@@ -141,14 +141,14 @@ static xmldoc_priv * create_priv(void)
return priv;
}
-static xmlDocPtr doparse( char *ptr, int len )
+static xmlDocPtr doparse( char *ptr, int len, const char *encoding )
{
#ifdef HAVE_XMLREADMEMORY
/*
* use xmlReadMemory if possible so we can suppress
* writing errors to stderr
*/
- return xmlReadMemory( ptr, len, NULL, "UTF-8",
+ return xmlReadMemory( ptr, len, NULL, encoding,
XML_PARSE_NOERROR | XML_PARSE_NOWARNING | XML_PARSE_NOBLANKS );
#else
return xmlParseMemory( ptr, len );
@@ -1447,7 +1447,7 @@ static HRESULT domdoc_onDataAvailable(void *obj, char *ptr, DWORD len)
domdoc *This = obj;
xmlDocPtr xmldoc;
- xmldoc = doparse( ptr, len );
+ xmldoc = doparse( ptr, len, NULL );
if(xmldoc) {
xmldoc->_private = create_priv();
return attach_xmldoc(&This->node, xmldoc);
@@ -1683,9 +1683,9 @@ static HRESULT WINAPI domdoc_loadXML(
{
*isSuccessful = VARIANT_FALSE;
- if ( bstrXML && bstr_to_utf8( bstrXML, &str, &len ) )
+ if ( bstrXML && bstr_to_utf8( bstrXML, &str, &len ) )
{
- xmldoc = doparse( str, len );
+ xmldoc = doparse( str, len, "UTF-8" );
heap_free( str );
if ( !xmldoc )
This->error = E_FAIL;
diff --git a/dlls/msxml3/node.c b/dlls/msxml3/node.c
index e263a2a..31c6e46 100644
--- a/dlls/msxml3/node.c
+++ b/dlls/msxml3/node.c
@@ -437,6 +437,7 @@ static HRESULT WINAPI xmlnode_get_firstChild(
IXMLDOMNode** firstChild)
{
xmlnode *This = impl_from_IXMLDOMNode( iface );
+ TRACE("(%p)->(%p)\n", This, firstChild);
return get_node( This, "firstChild", This->node->children, firstChild );
}
--
1.5.6.5
--------------020004010305070707010302--
More information about the wine-patches
mailing list