--- win32-os.c 16 Jan 2006 16:39:58 +0100 1.7 +++ win32-os.c 08 May 2006 16:29:28 +0200 @@ -164,8 +164,12 @@ } if (!VirtualAlloc(addr, len, (mem_info.State == MEM_RESERVE)? MEM_COMMIT: MEM_RESERVE, PAGE_EXECUTE_READWRITE)) { - perror("VirtualAlloc"); - return 0; + perror("VirtualAlloc(1)"); + if (fixedp) + return 0; + addr = VirtualAlloc(0, len, MEM_RESERVE, PAGE_EXECUTE_READWRITE); + if (!addr) + perror("VirtualAlloc(2)"); } return addr;