Reactos

[NTOS:EX] Fix 64 bit issues in ExfWaitForRundownProtectionReleaseCacheAware

+4 -4
+4 -4
ntoskrnl/ex/rundown.c
··· 440 440 PEX_RUNDOWN_REF RunRef; 441 441 EX_RUNDOWN_WAIT_BLOCK WaitBlock; 442 442 PEX_RUNDOWN_WAIT_BLOCK WaitBlockPointer; 443 - ULONG ProcCount, Current, Value, OldValue, TotalCount; 443 + ULONG_PTR ProcCount, Current, Value, OldValue, TotalCount; 444 444 445 445 ProcCount = RunRefCacheAware->Number; 446 446 /* No proc, nothing to do */ ··· 480 480 } 481 481 482 482 /* Sanity check: we didn't overflow */ 483 - ASSERT((LONG)TotalCount >= 0); 483 + ASSERT((LONG_PTR)TotalCount >= 0); 484 484 if (TotalCount != 0) 485 485 { 486 486 /* Init the waitblock event */ ··· 490 490 491 491 /* Do we have to wait? If so, go ahead! */ 492 492 if (InterlockedExchangeAddSizeT(&WaitBlock.Count, 493 - (LONG)TotalCount >> EX_RUNDOWN_COUNT_SHIFT) == 494 - -(LONG)(TotalCount >> EX_RUNDOWN_COUNT_SHIFT)) 493 + (LONG_PTR)TotalCount >> EX_RUNDOWN_COUNT_SHIFT) == 494 + -(LONG_PTR)(TotalCount >> EX_RUNDOWN_COUNT_SHIFT)) 495 495 { 496 496 KeWaitForSingleObject(&WaitBlock.WakeEvent, Executive, KernelMode, FALSE, NULL); 497 497 }