diff --git a/reactos/dll/win32/advapi32/service/eventlog.c b/reactos/dll/win32/advapi32/service/eventlog.c index 7a4acb5cc07..23b138b5f13 100644 --- a/reactos/dll/win32/advapi32/service/eventlog.c +++ b/reactos/dll/win32/advapi32/service/eventlog.c @@ -673,6 +673,12 @@ ReadEventLogA(IN HANDLE hEventLog, hEventLog, dwReadFlags, dwRecordOffset, lpBuffer, nNumberOfBytesToRead, pnBytesRead, pnMinNumberOfBytesNeeded); + if(!pnBytesRead || !pnMinNumberOfBytesNeeded) + { + SetLastError(ERROR_INVALID_PARAMETER); + return FALSE; + } + /* If buffer is NULL set nNumberOfBytesToRead to 0 to prevent rpcrt4 from trying to access a null pointer */ if (!lpBuffer) @@ -737,6 +743,12 @@ ReadEventLogW(IN HANDLE hEventLog, hEventLog, dwReadFlags, dwRecordOffset, lpBuffer, nNumberOfBytesToRead, pnBytesRead, pnMinNumberOfBytesNeeded); + if(!pnBytesRead || !pnMinNumberOfBytesNeeded) + { + SetLastError(ERROR_INVALID_PARAMETER); + return FALSE; + } + /* If buffer is NULL set nNumberOfBytesToRead to 0 to prevent rpcrt4 from trying to access a null pointer */ if (!lpBuffer)