Mercurial > vim
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 /* |