- Fix condition when lParam is null and not allow it to go into exception.

svn path=/trunk/; revision=60865
This commit is contained in:
James Tabor 2013-11-04 04:26:40 +00:00
parent 745c57ba70
commit 60dada364b

View file

@ -174,7 +174,14 @@ MsgMemorySize(PMSGMEMORY MsgMemoryEntry, WPARAM wParam, LPARAM lParam)
}
else if (MMS_SIZE_LPARAMSZ == MsgMemoryEntry->Size)
{
Size = (UINT) ((wcslen((PWSTR) lParam) + 1) * sizeof(WCHAR));
// WM_SETTEXT and WM_SETTINGCHANGE can be null!
if (!lParam)
{
TRACE("lParam is NULL!\n");
Size = 0;
}
else
Size = (UINT) ((wcslen((PWSTR) lParam) + 1) * sizeof(WCHAR));
}
else if (MMS_SIZE_SPECIAL == MsgMemoryEntry->Size)
{
@ -436,6 +443,7 @@ CopyMsgToKernelMem(MSG *KernelModeMsg, MSG *UserModeMsg, PMSGMEMORY MsgMemoryEnt
/* Copy data if required */
if (0 != (MsgMemoryEntry->Flags & MMS_FLAG_READ))
{
TRACE("Copy Message %d from usermode buffer\n", KernelModeMsg->message);
Status = MmCopyFromCaller(KernelMem, (PVOID) UserModeMsg->lParam, Size);
if (! NT_SUCCESS(Status))
{