Ignore:
Timestamp:
Mar 28, 2000, 7:11:50 PM (25 years ago)
Author:
sandervl
Message:

openfile, virtualquery + import name fixes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/kernel32/mmap.cpp

    r3206 r3259  
    1 /* $Id: mmap.cpp,v 1.37 2000-03-23 19:23:47 sandervl Exp $ */
     1/* $Id: mmap.cpp,v 1.38 2000-03-28 17:11:49 sandervl Exp $ */
    22
    33/*
     
    195195  if(hMemFile != -1) {
    196196//      for(i=0;i<nrpages;i++) {
    197                 if(VirtualQuery((LPSTR)pageAddr, &memInfo, nrpages*PAGE_SIZE) == 0) {
     197                if(VirtualQuery((LPSTR)pageAddr, &memInfo, sizeof(MEMORY_BASIC_INFORMATION)) == 0) {
    198198                        dprintf(("Win32MemMap::commitPage: VirtualQuery (%x,%x) failed for %x", pageAddr, nrpages*PAGE_SIZE));
    199199                        goto fail;
    200200                }
     201                memInfo.RegionSize = min(memInfo.RegionSize, nrpages*PAGE_SIZE);
    201202                //Only changes the state of the pages with the same attribute flags
    202203                //(returned in memInfo.RegionSize)
     
    250251        ULONG sizeleft = nrpages*PAGE_SIZE;
    251252        while(sizeleft) {
    252                 if(VirtualQuery((LPSTR)pageAddr, &memInfo, sizeleft) == 0) {
     253
     254                if(VirtualQuery((LPSTR)pageAddr, &memInfo, sizeof(MEMORY_BASIC_INFORMATION)) == 0) {
    253255                        dprintf(("Win32MemMap::commitPage: VirtualQuery (%x,%x) failed", pageAddr, sizeleft));
    254256                        goto fail;
    255257                }
     258                memInfo.RegionSize = min(memInfo.RegionSize, sizeleft);
     259
    256260                if(!(memInfo.State & MEM_COMMIT))
    257261                {//if it's already committed, then the app tried to write to it
Note: See TracChangeset for help on using the changeset viewer.