[EVENTLOG]

- Fix memory leak
- Fix null pointer dereference

CID #515253
CID #716316

svn path=/trunk/; revision=62647
This commit is contained in:
Pierre Schweitzer 2014-04-06 12:35:54 +00:00
parent e37f56bfbb
commit ad8c33fa00
2 changed files with 10 additions and 7 deletions

View file

@ -979,6 +979,7 @@ BOOL LogfWriteData(PLOGFILE LogFile, DWORD BufSize, PBYTE Buffer)
if (RecBuf->Reserved != LOGFILE_SIGNATURE)
{
DPRINT1("LogFile corrupt!\n");
HeapFree(GetProcessHeap(), 0, RecBuf);
RtlReleaseResource(&LogFile->Lock);
return FALSE;
}

View file

@ -921,20 +921,22 @@ NTSTATUS ElfrReportEventA(
}
Done:
for (i = 0; i < NumStrings; i++)
if (StringsArrayW != NULL)
{
if (StringsArrayW[i] != NULL)
for (i = 0; i < NumStrings; i++)
{
if (StringsArrayW[i]->Buffer)
if (StringsArrayW[i] != NULL)
{
RtlFreeUnicodeString(StringsArrayW[i]);
HeapFree(MyHeap, 0, StringsArrayW[i]);
if (StringsArrayW[i]->Buffer)
{
RtlFreeUnicodeString(StringsArrayW[i]);
HeapFree(MyHeap, 0, StringsArrayW[i]);
}
}
}
}
if (StringsArrayW != NULL)
HeapFree(MyHeap, 0, StringsArrayW);
}
RtlFreeUnicodeString(&ComputerNameW);