[PATCH] Treat input BSTR as general WCHAR string for ::loadXML()
Nikolay Sivov
nsivov at codeweavers.com
Sun Mar 14 15:04:30 CDT 2010
---
dlls/msxml3/domdoc.c | 7 ++++---
1 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/dlls/msxml3/domdoc.c b/dlls/msxml3/domdoc.c
index a29e9b2..aae8a34 100644
--- a/dlls/msxml3/domdoc.c
+++ b/dlls/msxml3/domdoc.c
@@ -1650,19 +1650,20 @@ static HRESULT WINAPI domdoc_abort(
static BOOL bstr_to_utf8( BSTR bstr, char **pstr, int *plen )
{
- UINT len, blen = SysStringLen( bstr );
+ UINT len;
LPSTR str;
- len = WideCharToMultiByte( CP_UTF8, 0, bstr, blen, NULL, 0, NULL, NULL );
+ len = WideCharToMultiByte( CP_UTF8, 0, bstr, -1, NULL, 0, NULL, NULL );
str = heap_alloc( len );
if ( !str )
return FALSE;
- WideCharToMultiByte( CP_UTF8, 0, bstr, blen, str, len, NULL, NULL );
+ WideCharToMultiByte( CP_UTF8, 0, bstr, -1, str, len, NULL, NULL );
*plen = len;
*pstr = str;
return TRUE;
}
+/* don't rely on data to be in BSTR format, treat it as WCHAR string */
static HRESULT WINAPI domdoc_loadXML(
IXMLDOMDocument2 *iface,
BSTR bstrXML,
--
1.5.6.5
--=-0bPD81Gg3lbsyEz8zLOI--
More information about the wine-patches
mailing list