mirror of
https://github.com/ApfelTeeSaft/reactos.git
synced 2026-09-03 04:13:31 +00:00
- MmLoadSystemImage's last parameter (BaseAddress) is not marked as OPTIONAL. Fix callers.
svn path=/trunk/; revision=35872
This commit is contained in:
@@ -277,6 +277,7 @@ IopLoadServiceModule(
|
||||
UNICODE_STRING ServiceImagePath, CCSName;
|
||||
NTSTATUS Status;
|
||||
HANDLE CCSKey, ServiceKey;
|
||||
PVOID BaseAddress;
|
||||
|
||||
DPRINT("IopLoadServiceModule(%wZ, 0x%p)\n", ServiceName, ModuleObject);
|
||||
|
||||
@@ -358,7 +359,7 @@ IopLoadServiceModule(
|
||||
else
|
||||
{
|
||||
DPRINT("Loading module\n");
|
||||
Status = MmLoadSystemImage(&ServiceImagePath, NULL, NULL, 0, (PVOID)ModuleObject, NULL);
|
||||
Status = MmLoadSystemImage(&ServiceImagePath, NULL, NULL, 0, (PVOID)ModuleObject, &BaseAddress);
|
||||
}
|
||||
|
||||
ExFreePool(ServiceImagePath.Buffer);
|
||||
@@ -1561,6 +1562,7 @@ IopLoadUnloadDriver(PLOAD_UNLOAD_PARAMS LoadParams)
|
||||
PDEVICE_NODE DeviceNode;
|
||||
PDRIVER_OBJECT DriverObject;
|
||||
PLDR_DATA_TABLE_ENTRY ModuleObject;
|
||||
PVOID BaseAddress;
|
||||
WCHAR *cur;
|
||||
|
||||
/* Check if it's an unload request */
|
||||
@@ -1671,7 +1673,7 @@ IopLoadUnloadDriver(PLOAD_UNLOAD_PARAMS LoadParams)
|
||||
* Load the driver module
|
||||
*/
|
||||
|
||||
Status = MmLoadSystemImage(&ImagePath, NULL, NULL, 0, (PVOID)&ModuleObject, NULL);
|
||||
Status = MmLoadSystemImage(&ImagePath, NULL, NULL, 0, (PVOID)&ModuleObject, &BaseAddress);
|
||||
if (!NT_SUCCESS(Status) && Status != STATUS_IMAGE_ALREADY_LOADED)
|
||||
{
|
||||
DPRINT("MmLoadSystemImage() failed (Status %lx)\n", Status);
|
||||
|
||||
@@ -694,6 +694,7 @@ MmInitializeCrashDump(HANDLE PageFileHandle, ULONG PageFileNum)
|
||||
ANSI_STRING ProcName;
|
||||
PIO_STACK_LOCATION StackPtr;
|
||||
PLDR_DATA_TABLE_ENTRY ModuleObject = NULL;
|
||||
PVOID BaseAddress;
|
||||
|
||||
Status = ZwFsControlFile(PageFileHandle,
|
||||
0,
|
||||
@@ -766,13 +767,13 @@ MmInitializeCrashDump(HANDLE PageFileHandle, ULONG PageFileNum)
|
||||
}
|
||||
|
||||
/* Load the diskdump driver. */
|
||||
Status = MmLoadSystemImage(&DiskDumpName, NULL, NULL, 0, (PVOID)&ModuleObject, NULL);
|
||||
Status = MmLoadSystemImage(&DiskDumpName, NULL, NULL, 0, (PVOID)&ModuleObject, &BaseAddress);
|
||||
if (ModuleObject == NULL)
|
||||
{
|
||||
return(STATUS_OBJECT_NAME_NOT_FOUND);
|
||||
}
|
||||
RtlInitAnsiString(&ProcName, "DiskDumpFunctions");
|
||||
MmCoreDumpFunctions = MiFindExportedRoutineByName(ModuleObject->DllBase,
|
||||
MmCoreDumpFunctions = MiFindExportedRoutineByName(BaseAddress,
|
||||
&ProcName);
|
||||
if (!NT_SUCCESS(Status))
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user