wine/dlls/shdocvw webbrowser.c shdocvw.h events.c

Alexandre Julliard julliard at wine.codeweavers.com
Fri Nov 18 06:06:12 CST 2005


ChangeSet ID:	21324
CVSROOT:	/opt/cvs-commit
Module name:	wine
Changes by:	julliard at winehq.org	2005/11/18 06:06:12

Modified files:
	dlls/shdocvw   : webbrowser.c shdocvw.h events.c 

Log message:
	Jacek Caban <jacek at codeweavers.com>
	Free ConnectionPoint objects (fix memory leak).

Patch: http://cvs.winehq.org/patch.py?id=21324

Old revision  New revision  Changes     Path
 1.24          1.25          +1 -0       wine/dlls/shdocvw/webbrowser.c
 1.30          1.31          +1 -0       wine/dlls/shdocvw/shdocvw.h
 1.17          1.18          +7 -0       wine/dlls/shdocvw/events.c

Index: wine/dlls/shdocvw/webbrowser.c
diff -u -p wine/dlls/shdocvw/webbrowser.c:1.24 wine/dlls/shdocvw/webbrowser.c:1.25
--- wine/dlls/shdocvw/webbrowser.c:1.24	18 Nov 2005 12: 6:12 -0000
+++ wine/dlls/shdocvw/webbrowser.c	18 Nov 2005 12: 6:12 -0000
@@ -125,6 +125,7 @@ static ULONG WINAPI WebBrowser_Release(I
             IUnknown_Release(This->document);
 
         WebBrowser_OleObject_Destroy(This);
+        WebBrowser_Events_Destroy(This);
 
         HeapFree(GetProcessHeap(), 0, This);
         SHDOCVW_UnlockModule();
Index: wine/dlls/shdocvw/shdocvw.h
diff -u -p wine/dlls/shdocvw/shdocvw.h:1.30 wine/dlls/shdocvw/shdocvw.h:1.31
--- wine/dlls/shdocvw/shdocvw.h:1.30	18 Nov 2005 12: 6:12 -0000
+++ wine/dlls/shdocvw/shdocvw.h	18 Nov 2005 12: 6:12 -0000
@@ -131,6 +131,7 @@ void WebBrowser_ClientSite_Init(WebBrows
 void WebBrowser_DocHost_Init(WebBrowser*);
 
 void WebBrowser_OleObject_Destroy(WebBrowser*);
+void WebBrowser_Events_Destroy(WebBrowser*);
 
 HRESULT WebBrowser_Create(IUnknown*,REFIID,void**);
 
Index: wine/dlls/shdocvw/events.c
diff -u -p wine/dlls/shdocvw/events.c:1.17 wine/dlls/shdocvw/events.c:1.18
--- wine/dlls/shdocvw/events.c:1.17	18 Nov 2005 12: 6:12 -0000
+++ wine/dlls/shdocvw/events.c	18 Nov 2005 12: 6:12 -0000
@@ -233,3 +233,10 @@ void WebBrowser_Events_Init(WebBrowser *
     ConnectionPoint_Create(This, &DIID_DWebBrowserEvents, &This->cp_wbe);
     ConnectionPoint_Create(This, &IID_IPropertyNotifySink, &This->cp_pns);
 }
+
+void WebBrowser_Events_Destroy(WebBrowser *This)
+{
+    HeapFree(GetProcessHeap(), 0, This->cp_wbe2);
+    HeapFree(GetProcessHeap(), 0, This->cp_wbe);
+    HeapFree(GetProcessHeap(), 0, This->cp_pns);
+}



More information about the wine-cvs mailing list