Module: wine Branch: master Commit: ef14808c932815da2b245cf79250b6eebf3600d5 URL: https://gitlab.winehq.org/wine/wine/-/commit/ef14808c932815da2b245cf79250b6e...
Author: Hans Leidekker hans@codeweavers.com Date: Thu Sep 21 11:26:05 2023 +0200
wbemprox: Fix Win32_OperatingSystem.TotalVirtual/VisibleMemorySize.
---
dlls/wbemprox/builtin.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-)
diff --git a/dlls/wbemprox/builtin.c b/dlls/wbemprox/builtin.c index f62eadaf0fe..ac9c1cef69a 100644 --- a/dlls/wbemprox/builtin.c +++ b/dlls/wbemprox/builtin.c @@ -1615,6 +1615,15 @@ static UINT64 get_available_physical_memory(void) return status.ullAvailPhys; }
+static UINT64 get_total_virtual_memory(void) +{ + MEMORYSTATUSEX status; + + status.dwLength = sizeof(status); + if (!GlobalMemoryStatusEx( &status )) return 1024 * 1024 * 1024; + return status.ullTotalVirtual; +} + static UINT64 get_available_virtual_memory(void) { MEMORYSTATUSEX status; @@ -3786,8 +3795,8 @@ static enum fill_status fill_operatingsystem( struct table *table, const struct rec->suitemask = 272; /* Single User + Terminal */ rec->systemdirectory = get_systemdirectory(); rec->systemdrive = get_systemdrive(); - rec->totalvirtualmemorysize = get_total_physical_memory() / 1024; - rec->totalvisiblememorysize = rec->totalvirtualmemorysize; + rec->totalvirtualmemorysize = get_total_virtual_memory() / 1024; + rec->totalvisiblememorysize = get_total_physical_memory() / 1024; rec->version = get_osversion( &ver ); rec->windowsdirectory = get_windowsdirectory(); if (!match_row( table, row, cond, &status )) free_row_values( table, row );