[PATCH 6/6] Speed up a IPersistStreamInit::Save() by querying for BSTR length
Nikolay Sivov
nsivov at codeweavers.com
Sun Jul 18 08:18:13 CDT 2010
---
dlls/msxml3/domdoc.c | 12 +++++-------
1 files changed, 5 insertions(+), 7 deletions(-)
diff --git a/dlls/msxml3/domdoc.c b/dlls/msxml3/domdoc.c
index 0007503..f9f02e0 100644
--- a/dlls/msxml3/domdoc.c
+++ b/dlls/msxml3/domdoc.c
@@ -415,22 +415,20 @@ static HRESULT WINAPI domdoc_IPersistStreamInit_Load(
}
static HRESULT WINAPI domdoc_IPersistStreamInit_Save(
- IPersistStreamInit *iface, LPSTREAM pStm, BOOL fClearDirty)
+ IPersistStreamInit *iface, IStream *stream, BOOL clr_dirty)
{
domdoc *This = impl_from_IPersistStreamInit(iface);
- HRESULT hr;
BSTR xmlString;
+ HRESULT hr;
- TRACE("(%p)->(%p %d)\n", This, pStm, fClearDirty);
+ TRACE("(%p)->(%p %d)\n", This, stream, clr_dirty);
hr = IXMLDOMNode_get_xml( IXMLDOMNode_from_impl(&This->node), &xmlString );
if(hr == S_OK)
{
- DWORD count;
- DWORD len = strlenW(xmlString) * sizeof(WCHAR);
-
- hr = IStream_Write( pStm, xmlString, len, &count );
+ DWORD len = SysStringLen(xmlString) * sizeof(WCHAR);
+ hr = IStream_Write( stream, xmlString, len, NULL );
SysFreeString(xmlString);
}
--
1.5.6.5
--------------040502000208060509020907--
More information about the wine-patches
mailing list