fixed some memory leaks
Modified: trunk/reactos/subsys/system/msconfig/srvpage.c
_____
Modified: trunk/reactos/subsys/system/msconfig/srvpage.c
--- trunk/reactos/subsys/system/msconfig/srvpage.c 2005-11-13
23:05:41 UTC (rev 19214)
+++ trunk/reactos/subsys/system/msconfig/srvpage.c 2005-11-13
23:21:38 UTC (rev 19215)
@@ -156,6 +156,12 @@
}
}
+ if (pServiceFailureActions !=
NULL)
+ {
+
HeapFree(GetProcessHeap(), 0, pServiceFailureActions);
+ pServiceFailureActions =
NULL;
+ }
+
/* get vendor of service binary */
BytesNeeded = 0;
if (!QueryServiceConfig(hService, pServiceConfig,
0, &BytesNeeded))
@@ -188,7 +194,10 @@
_tcscpy(FileName,
pServiceConfig->lpBinaryPathName);
}
- dwLen = GetFileVersionInfoSize(FileName,
&dwHandle);
+ HeapFree(GetProcessHeap(), 0,
pServiceConfig);
+ pServiceConfig = NULL;
+
+ dwLen =
GetFileVersionInfoSize(FileName, &dwHandle);
if (dwLen)
{
lpData = (TCHAR*) HeapAlloc(GetProcessHeap(),
0, dwLen);
@@ -212,6 +221,7 @@
item.iSubItem = 2;
SendMessage(hServicesListCtrl,
LVM_SETITEMTEXT, item.iItem, (LPARAM) &item);
}
+
HeapFree(GetProcessHeap(), 0, lpData);
}
else
{
@@ -232,8 +242,6 @@
}
HeapFree(GetProcessHeap(), 0, pServiceStatus);
- HeapFree(GetProcessHeap(), 0, pServiceConfig);
- HeapFree(GetProcessHeap(), 0, pServiceFailureActions);
CloseServiceHandle(ScHandle);
}
Show replies by date