Commit b3717a92 authored by Józef Kucia's avatar Józef Kucia Committed by Alexandre Julliard

dbghelp: Fix memory leak in SymInitializeW() (Coverity).

parent 4100bac5
...@@ -298,7 +298,8 @@ BOOL WINAPI SymInitializeW(HANDLE hProcess, PCWSTR UserSearchPath, BOOL fInvadeP ...@@ -298,7 +298,8 @@ BOOL WINAPI SymInitializeW(HANDLE hProcess, PCWSTR UserSearchPath, BOOL fInvadeP
TRACE("(%p %s %u)\n", hProcess, debugstr_w(UserSearchPath), fInvadeProcess); TRACE("(%p %s %u)\n", hProcess, debugstr_w(UserSearchPath), fInvadeProcess);
if (process_find_by_handle(hProcess)){ if (process_find_by_handle(hProcess))
{
WARN("the symbols for this process have already been initialized!\n"); WARN("the symbols for this process have already been initialized!\n");
/* MSDN says to only call this function once unless SymCleanup() has been called since the last call. /* MSDN says to only call this function once unless SymCleanup() has been called since the last call.
...@@ -307,15 +308,15 @@ BOOL WINAPI SymInitializeW(HANDLE hProcess, PCWSTR UserSearchPath, BOOL fInvadeP ...@@ -307,15 +308,15 @@ BOOL WINAPI SymInitializeW(HANDLE hProcess, PCWSTR UserSearchPath, BOOL fInvadeP
return TRUE; return TRUE;
} }
pcs = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*pcs));
if (!pcs) return FALSE;
pcs->handle = hProcess;
IsWow64Process(GetCurrentProcess(), &wow64); IsWow64Process(GetCurrentProcess(), &wow64);
if (!IsWow64Process(hProcess, &child_wow64)) if (!IsWow64Process(hProcess, &child_wow64))
return FALSE; return FALSE;
pcs = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*pcs));
if (!pcs) return FALSE;
pcs->handle = hProcess;
pcs->is_64bit = (sizeof(void *) == 8 || wow64) && !child_wow64; pcs->is_64bit = (sizeof(void *) == 8 || wow64) && !child_wow64;
if (UserSearchPath) if (UserSearchPath)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment