[PATCH 2/3] Fix a leak of error message BSTR

Nikolay Sivov nsivov at codeweavers.com
Tue Oct 26 16:15:38 CDT 2010


---
 dlls/msxml3/saxreader.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/dlls/msxml3/saxreader.c b/dlls/msxml3/saxreader.c
index 815d062..fbc10cf 100644
--- a/dlls/msxml3/saxreader.c
+++ b/dlls/msxml3/saxreader.c
@@ -218,6 +218,7 @@ static void format_error_message_from_id(saxlocator *This, HRESULT hr)
             BSTR bstrMsg = SysAllocString(msg);
             IVBSAXErrorHandler_fatalError(This->saxreader->vberrorHandler,
                     (IVBSAXLocator*)&This->lpVBSAXLocatorVtbl, &bstrMsg, hr);
+            SysFreeString(bstrMsg);
         }
         else
             ISAXErrorHandler_fatalError(This->saxreader->errorHandler,
@@ -1319,6 +1320,7 @@ static void libxmlFatalError(void *ctx, const char *msg, ...)
         BSTR bstrError = SysAllocString(wszError);
         IVBSAXErrorHandler_fatalError(This->saxreader->vberrorHandler,
                 (IVBSAXLocator*)&This->lpVBSAXLocatorVtbl, &bstrError, E_FAIL);
+        SysFreeString(bstrError);
     }
     else
         ISAXErrorHandler_fatalError(This->saxreader->errorHandler,
-- 
1.5.6.5



--------------090404030906060006030801--



More information about the wine-patches mailing list