localui: Fix a memory leak.

This commit is contained in:
Detlef Riekenberg 2009-09-29 13:35:45 +02:00 committed by Alexandre Julliard
parent f6120c2aa4
commit 64bcb540bb
1 changed files with 3 additions and 7 deletions

View File

@ -503,7 +503,6 @@ static BOOL WINAPI localui_AddPortUI(PCWSTR pName, HWND hWnd, PCWSTR pMonitorNam
{
addportui_t data;
HANDLE hXcv;
LPWSTR ptr = NULL;
DWORD needed;
DWORD dummy;
DWORD status;
@ -529,14 +528,11 @@ static BOOL WINAPI localui_AddPortUI(PCWSTR pName, HWND hWnd, PCWSTR pMonitorNam
(PBYTE) &dummy, 0, &needed, &status);
TRACE("got %u with status %u\n", res, status);
if (res && (status == ERROR_SUCCESS)) {
if (res && (status == ERROR_SUCCESS) && ppPortName) {
/* Native localui uses GlobalAlloc also.
The caller must GlobalFree the buffer */
ptr = GlobalAlloc(GPTR, (lstrlenW(data.portname)+1) * sizeof(WCHAR));
if (ptr) {
lstrcpyW(ptr, data.portname);
if (ppPortName) *ppPortName = ptr;
}
*ppPortName = GlobalAlloc(GPTR, (lstrlenW(data.portname)+1) * sizeof(WCHAR));
if (*ppPortName) lstrcpyW(*ppPortName, data.portname);
}
if (res && (status == ERROR_ALREADY_EXISTS)) {