Fix my bad fix.
authorDmitry Gorbachev <gorbachev@reactos.org>
Sat, 17 Mar 2007 08:30:26 +0000 (08:30 +0000)
committerDmitry Gorbachev <gorbachev@reactos.org>
Sat, 17 Mar 2007 08:30:26 +0000 (08:30 +0000)
svn path=/trunk/; revision=26119

reactos/ntoskrnl/mm/section.c

index 082f994..6177c7e 100644 (file)
@@ -3716,7 +3716,7 @@ NtMapViewOfSection(IN HANDLE SectionHandle,
        if(SectionOffset != NULL)
        {
          ProbeForWriteLargeInteger(SectionOffset);
-         SafeSectionOffset.QuadPart = PAGE_ROUND_DOWN(SectionOffset->QuadPart);
+         SafeSectionOffset = *SectionOffset;
        }
        ProbeForWriteSize_t(ViewSize);
        SafeViewSize = *ViewSize;
@@ -3735,11 +3735,12 @@ NtMapViewOfSection(IN HANDLE SectionHandle,
    else
    {
      SafeBaseAddress = (BaseAddress != NULL ? *BaseAddress : NULL);
-     SafeSectionOffset.QuadPart =
-          (SectionOffset != NULL ? PAGE_ROUND_DOWN(SectionOffset->QuadPart) : 0);
+     SafeSectionOffset.QuadPart = (SectionOffset != NULL ? SectionOffset->QuadPart : 0);
      SafeViewSize = (ViewSize != NULL ? *ViewSize : 0);
    }
 
+   SafeSectionOffset.LowPart = PAGE_ROUND_DOWN(SafeSectionOffset.LowPart);
+
    Status = ObReferenceObjectByHandle(ProcessHandle,
                                       PROCESS_VM_OPERATION,
                                       PsProcessType,