Skip to content

Commit 46b7411

Browse files
committed
Fix static variable issue in SharedUtil.Memory.hpp
1 parent dd571b4 commit 46b7411

File tree

1 file changed

+4
-7
lines changed

1 file changed

+4
-7
lines changed

Shared/sdk/SharedUtil.Memory.hpp

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,6 @@
2525

2626
namespace SharedUtil
2727
{
28-
#ifdef _WIN32
29-
static HANDLE g_process = GetCurrentProcess();
30-
#endif
31-
3228
bool TryGetProcessMemoryStats(ProcessMemoryStats& out)
3329
{
3430
out = {};
@@ -44,14 +40,15 @@ namespace SharedUtil
4440

4541
static std::vector<char> workingSetBuffer(2048 * sizeof(PSAPI_WORKING_SET_BLOCK) + sizeof(PSAPI_WORKING_SET_INFORMATION));
4642
auto workingSetInfo = reinterpret_cast<PSAPI_WORKING_SET_INFORMATION*>(workingSetBuffer.data());
47-
BOOL success = QueryWorkingSet(g_process, workingSetBuffer.data(), workingSetBuffer.size());
43+
HANDLE process = GetCurrentProcess();
44+
BOOL success = QueryWorkingSet(process, workingSetBuffer.data(), workingSetBuffer.size());
4845

4946
if (!success && GetLastError() == ERROR_BAD_LENGTH)
5047
{
5148
workingSetInfo->NumberOfEntries += 64; // Insurance in case the number of entries changes.
5249
workingSetBuffer.resize(workingSetInfo->NumberOfEntries * sizeof(PSAPI_WORKING_SET_BLOCK) + sizeof(PSAPI_WORKING_SET_INFORMATION));
5350
workingSetInfo = reinterpret_cast<PSAPI_WORKING_SET_INFORMATION*>(workingSetBuffer.data());
54-
success = QueryWorkingSet(g_process, workingSetBuffer.data(), workingSetBuffer.size());
51+
success = QueryWorkingSet(process, workingSetBuffer.data(), workingSetBuffer.size());
5552
}
5653

5754
if (success)
@@ -84,7 +81,7 @@ namespace SharedUtil
8481
{
8582
PROCESS_MEMORY_COUNTERS_EX memoryInfo{};
8683

87-
if (!GetProcessMemoryInfo(g_process, reinterpret_cast<PPROCESS_MEMORY_COUNTERS>(&memoryInfo), sizeof(memoryInfo)))
84+
if (!GetProcessMemoryInfo(process, reinterpret_cast<PPROCESS_MEMORY_COUNTERS>(&memoryInfo), sizeof(memoryInfo)))
8885
return false;
8986

9087
out.residentMemorySize = memoryInfo.WorkingSetSize;

0 commit comments

Comments
 (0)