comparison src/os_win32.c @ 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 286ba0251c0a
children 27ecf0c87bd2
comparison
equal deleted inserted replaced
3690:942df3a8051b 3691:4873d9c4ad3b
4997 */ 4997 */
4998 /*ARGSUSED*/ 4998 /*ARGSUSED*/
4999 long_u 4999 long_u
5000 mch_avail_mem(int special) 5000 mch_avail_mem(int special)
5001 { 5001 {
5002 if (g_PlatformId != VER_PLATFORM_WIN32_NT) 5002 #ifdef MEMORYSTATUSEX
5003 PlatformId();
5004 if (g_PlatformId == VER_PLATFORM_WIN32_NT)
5005 {
5006 MEMORYSTATUSEX ms;
5007
5008 /* Need to use GlobalMemoryStatusEx() when there is more memory than
5009 * what fits in 32 bits. But it's not always available. */
5010 ms.dwLength = sizeof(MEMORYSTATUSEX);
5011 GlobalMemoryStatusEx(&ms);
5012 return (long_u)((ms.ullAvailPhys + ms.ullAvailPageFile) >> 10);
5013 }
5014 else
5015 #endif
5003 { 5016 {
5004 MEMORYSTATUS ms; 5017 MEMORYSTATUS ms;
5005 5018
5006 ms.dwLength = sizeof(MEMORYSTATUS); 5019 ms.dwLength = sizeof(MEMORYSTATUS);
5007 GlobalMemoryStatus(&ms); 5020 GlobalMemoryStatus(&ms);
5008 return (long_u)((ms.dwAvailPhys + ms.dwAvailPageFile) >> 10); 5021 return (long_u)((ms.dwAvailPhys + ms.dwAvailPageFile) >> 10);
5009 }
5010 else
5011 {
5012 MEMORYSTATUSEX ms;
5013
5014 ms.dwLength = sizeof(MEMORYSTATUSEX);
5015 GlobalMemoryStatusEx(&ms);
5016 return (long_u)((ms.ullAvailPhys + ms.ullAvailPageFile) >> 10);
5017 } 5022 }
5018 } 5023 }
5019 5024
5020 #ifdef FEAT_MBYTE 5025 #ifdef FEAT_MBYTE
5021 /* 5026 /*