Module: wine Branch: master Commit: a488ee8e7adcf58d003710f6a21bfbf6551a4de3 URL: http://source.winehq.org/git/wine.git/?a=commit;h=a488ee8e7adcf58d003710f6a2...
Author: Alexandre Julliard julliard@winehq.org Date: Mon Nov 24 13:45:42 2008 +0100
kernel32: Fix the base DOS memory address when the low 64K are not accessible.
---
dlls/kernel32/dosmem.c | 5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/dlls/kernel32/dosmem.c b/dlls/kernel32/dosmem.c index a1bff4d..8b0653b 100644 --- a/dlls/kernel32/dosmem.c +++ b/dlls/kernel32/dosmem.c @@ -170,15 +170,16 @@ BOOL DOSMEM_Init(void) ExitProcess(1); }
- DOSMEM_dosmem = addr; - if (!addr) + if (addr <= (void *)DOSMEM_64KB) { + DOSMEM_dosmem = 0; DOSMEM_protect = DOSMEM_64KB; sysmem = (char *)0xf0000; /* store sysmem in high addresses for now */ } else { WARN( "First megabyte not available for DOS address space.\n" ); + DOSMEM_dosmem = addr; DOSMEM_protect = 0; sysmem = DOSMEM_dosmem; }