[ros-diffs] [fireball] 35872: - MmLoadSystemImage's last parameter (BaseAddress) is not marked as OPTIONAL. Fix callers.

fireball at svn.reactos.org fireball at svn.reactos.org
Wed Sep 3 14:38:44 CEST 2008


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?rev=35872&r1=35871&r2=35872&view=diff
==============================================================================
--- 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=35872&r1=35871&r2=35872&view=diff
==============================================================================
--- 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))
    {



More information about the Ros-diffs mailing list