changeset 3691:4873d9c4ad3b v7.3.605

updated for version 7.3.605 Problem: MS-Windows: Can't compile with older compilers. (Titov Anatoly) Solution: Add #ifdef for MEMORYSTATUSEX.
author Bram Moolenaar <bram@vim.org>
date Thu, 19 Jul 2012 11:37:26 +0200
parents 942df3a8051b
children f2438f5f835e
files src/os_win32.c src/version.c
diffstat 2 files changed, 16 insertions(+), 9 deletions(-) [+]
line wrap: on
line diff
--- a/src/os_win32.c
+++ b/src/os_win32.c
@@ -4999,7 +4999,20 @@ mch_breakcheck(void)
     long_u
 mch_avail_mem(int special)
 {
-    if (g_PlatformId != VER_PLATFORM_WIN32_NT)
+#ifdef MEMORYSTATUSEX
+    PlatformId();
+    if (g_PlatformId == VER_PLATFORM_WIN32_NT)
+    {
+	MEMORYSTATUSEX	ms;
+
+	/* Need to use GlobalMemoryStatusEx() when there is more memory than
+	 * what fits in 32 bits. But it's not always available. */
+	ms.dwLength = sizeof(MEMORYSTATUSEX);
+	GlobalMemoryStatusEx(&ms);
+	return (long_u)((ms.ullAvailPhys + ms.ullAvailPageFile) >> 10);
+    }
+    else
+#endif
     {
 	MEMORYSTATUS	ms;
 
@@ -5007,14 +5020,6 @@ mch_avail_mem(int special)
 	GlobalMemoryStatus(&ms);
 	return (long_u)((ms.dwAvailPhys + ms.dwAvailPageFile) >> 10);
     }
-    else
-    {
-	MEMORYSTATUSEX	ms;
-
-	ms.dwLength = sizeof(MEMORYSTATUSEX);
-	GlobalMemoryStatusEx(&ms);
-	return (long_u)((ms.ullAvailPhys + ms.ullAvailPageFile) >> 10);
-    }
 }
 
 #ifdef FEAT_MBYTE
--- a/src/version.c
+++ b/src/version.c
@@ -715,6 +715,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    605,
+/**/
     604,
 /**/
     603,