UINT64 EndToClear;\r
\r
StartToClear = Start;\r
- EndToClear = RangeEnd;\r
+ EndToClear = RangeEnd + 1;\r
if (PcdGet8 (PcdHeapGuardPropertyMask) & (BIT1|BIT0)) {\r
if (IsGuardPage(StartToClear)) {\r
StartToClear += EFI_PAGE_SIZE;\r
}\r
- if (IsGuardPage (EndToClear)) {\r
+ if (IsGuardPage (EndToClear - 1)) {\r
EndToClear -= EFI_PAGE_SIZE;\r
}\r
- ASSERT (EndToClear > StartToClear);\r
}\r
\r
- DEBUG_CLEAR_MEMORY(\r
- (VOID *)(UINTN)StartToClear,\r
- (UINTN)(EndToClear - StartToClear + 1)\r
- );\r
+ if (EndToClear > StartToClear) {\r
+ DEBUG_CLEAR_MEMORY(\r
+ (VOID *)(UINTN)StartToClear,\r
+ (UINTN)(EndToClear - StartToClear)\r
+ );\r
+ }\r
}\r
}\r
\r