[PATCH] user32: Fix memory leak in WinHelpA().

Józef Kucia jkucia at codeweavers.com
Tue May 30 05:21:54 CDT 2017


Signed-off-by: Józef Kucia <jkucia at codeweavers.com>
---
 dlls/user32/winhelp.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/dlls/user32/winhelp.c b/dlls/user32/winhelp.c
index a2c331b..c40b0fc 100644
--- a/dlls/user32/winhelp.c
+++ b/dlls/user32/winhelp.c
@@ -80,6 +80,7 @@ BOOL WINAPI WinHelpA( HWND hWnd, LPCSTR lpHelpFile, UINT wCommand, ULONG_PTR dwD
     HWND                hDest;
     int                 size, dsize, nlen;
     WINHELP*            lpwh;
+    LRESULT             ret;
 
     hDest = FindWindowA("MS_WINHELP", NULL);
     if (!hDest) 
@@ -156,7 +157,9 @@ BOOL WINAPI WinHelpA( HWND hWnd, LPCSTR lpHelpFile, UINT wCommand, ULONG_PTR dwD
           lpwh->size, lpwh->command, lpwh->data,
           lpwh->ofsFilename ? (LPSTR)lpwh + lpwh->ofsFilename : "");
 
-    return SendMessageA(hDest, WM_COPYDATA, (WPARAM)hWnd, (LPARAM)&cds);
+    ret = SendMessageA(hDest, WM_COPYDATA, (WPARAM)hWnd, (LPARAM)&cds);
+    HeapFree(GetProcessHeap(), 0, lpwh);
+    return ret;
 }
 
 
-- 
2.10.2




More information about the wine-patches mailing list