[PATCH 2/3] ole32: Fix memory leak in CompositeMonikerImpl_Construct.

Alex Henrie alexhenrie24 at gmail.com
Tue Mar 29 19:31:16 CDT 2016


Coverity #713613, "Variable This going out of scope leaks the storage it
points to."

Signed-off-by: Alex Henrie <alexhenrie24 at gmail.com>
---
 dlls/ole32/compositemoniker.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/dlls/ole32/compositemoniker.c b/dlls/ole32/compositemoniker.c
index e1e0e5c..53dee2b 100644
--- a/dlls/ole32/compositemoniker.c
+++ b/dlls/ole32/compositemoniker.c
@@ -1848,8 +1848,10 @@ CompositeMonikerImpl_Construct(IMoniker **ppMoniker, IMoniker *pmkFirst, IMonike
             IMoniker_Release(This->tabMoniker[This->tabLastIndex-1]);
 
             This->tabMoniker[This->tabLastIndex-1]=tempMk;
-        } else
+        } else{
+            HeapFree(GetProcessHeap(), 0, This);
             return res;
+        }
 
         /* resize tabMoniker if needed */
         if (This->tabLastIndex==This->tabSize){
-- 
2.7.4




More information about the wine-patches mailing list