[2/3] kernel32: GlobalMemoryStatusEx: return the size of physical
memory + swapsize in ullTotalPageFile/ullAvailPageFile
Fabian Bieler
der.fabe at gmx.net
Wed Mar 14 18:41:00 CDT 2007
Window XP reports the amount of physical memory + swapsize in
ullTotalPageFile/ullAvailPageFile
Windows 98 reports only the amount of swap.
This patch implements the behavior of XP.
This patch also removes a workaround for Project2k which is no longer needed.
-------------- next part --------------
From 3f3738637fea71373b9aa381d97f875fc7706f81 Mon Sep 17 00:00:00 2001
From: Fabian Bieler <der.fabe at gmx.net>
Date: Thu, 15 Mar 2007 00:21:25 +0100
Subject: [PATCH] kernel32: GlobalMemoryStatusEx: return the size of physical memory + swapsize in ullTotalPageFile/ullAvailPageFile
---
dlls/kernel32/heap.c | 11 ++++++-----
1 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/dlls/kernel32/heap.c b/dlls/kernel32/heap.c
index d311d1f..996a7e4 100644
--- a/dlls/kernel32/heap.c
+++ b/dlls/kernel32/heap.c
@@ -1304,11 +1304,12 @@ 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:
+ */
+ lpmemex->ullTotalPageFile += lpmemex->ullTotalPhys;
+ lpmemex->ullAvailPageFile += lpmemex->ullAvailPhys;
/* FIXME: should do something for other systems */
GetSystemInfo(&si);
--
1.4.4.1
More information about the wine-patches
mailing list