Module: wine
Branch: master
Commit: e1c6c97fc5054cd500d5e9ef8edab6f61f5f53f8
URL: http://source.winehq.org/git/wine.git/?a=commit;h=e1c6c97fc5054cd500d5e9ef8…
Author: Fabian Bieler <der.fabe(a)gmx.net>
Date: Thu Mar 15 00:21:25 2007 +0100
kernel32: GlobalMemoryStatusEx: return the size of physical memory + swapsize in ullTotalPageFile/ullAvailPageFile.
---
dlls/kernel32/heap.c | 12 +++++++-----
1 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/dlls/kernel32/heap.c b/dlls/kernel32/heap.c
index d311d1f..df6a3c6 100644
--- a/dlls/kernel32/heap.c
+++ b/dlls/kernel32/heap.c
@@ -1304,11 +1304,13 @@ BOOL WINAPI GlobalMemoryStatusEx( LPMEMORYSTATUSEX lpmemex )
/ (lpmemex->ullTotalPhys / 100);
}
- /* Project2k refuses to start if it sees less than 1Mb of free swap */
- if (lpmemex->ullTotalPageFile < lpmemex->ullTotalPhys)
- lpmemex->ullTotalPageFile = lpmemex->ullTotalPhys;
- if (lpmemex->ullAvailPageFile < lpmemex->ullAvailPhys)
- lpmemex->ullAvailPageFile = lpmemex->ullAvailPhys;
+ /* Win98 returns only the swapsize in ullTotalPageFile/ullAvailPageFile,
+ WinXP returns the size of physical memory + swapsize;
+ mimic the behavior of XP.
+ Note: Project2k refuses to start if it sees less than 1Mb of free swap.
+ */
+ lpmemex->ullTotalPageFile += lpmemex->ullTotalPhys;
+ lpmemex->ullAvailPageFile += lpmemex->ullAvailPhys;
/* FIXME: should do something for other systems */
GetSystemInfo(&si);