Author: fireball
Date: Tue Sep 2 10:26:05 2008
New Revision: 35872
URL:
http://svn.reactos.org/svn/reactos?rev=35872&view=rev
Log:
- MmLoadSystemImage's last parameter (BaseAddress) is not marked as OPTIONAL. Fix
callers.
Modified:
trunk/reactos/ntoskrnl/io/iomgr/driver.c
trunk/reactos/ntoskrnl/mm/pagefile.c
Modified: trunk/reactos/ntoskrnl/io/iomgr/driver.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/io/iomgr/driver.c…
==============================================================================
--- trunk/reactos/ntoskrnl/io/iomgr/driver.c [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/io/iomgr/driver.c [iso-8859-1] Tue Sep 2 10:26:05 2008
@@ -277,6 +277,7 @@
UNICODE_STRING ServiceImagePath, CCSName;
NTSTATUS Status;
HANDLE CCSKey, ServiceKey;
+ PVOID BaseAddress;
DPRINT("IopLoadServiceModule(%wZ, 0x%p)\n", ServiceName, ModuleObject);
@@ -358,7 +359,7 @@
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 @@
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 @@
* 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);
Modified: trunk/reactos/ntoskrnl/mm/pagefile.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/mm/pagefile.c?rev…
==============================================================================
--- trunk/reactos/ntoskrnl/mm/pagefile.c [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/mm/pagefile.c [iso-8859-1] Tue Sep 2 10:26:05 2008
@@ -694,6 +694,7 @@
ANSI_STRING ProcName;
PIO_STACK_LOCATION StackPtr;
PLDR_DATA_TABLE_ENTRY ModuleObject = NULL;
+ PVOID BaseAddress;
Status = ZwFsControlFile(PageFileHandle,
0,
@@ -766,13 +767,13 @@
}
/* 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))
{