From 25cebcee2ae0b92829841321220ec9837479c118 Mon Sep 17 00:00:00 2001 From: Peter Jones Date: Tue, 13 Mar 2018 15:20:24 -0400 Subject: [PATCH 14/25] Fix a sign error in the debughook example app On ISO C90 on i386 4294967294 is a signed integer, and so x can't be greater (or equal) to that. Make it an unsigned and choose a better type for the variable. Signed-off-by: Peter Jones Signed-off-by: Nigel Croxon --- apps/debughook.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/debughook.c b/apps/debughook.c index 93cd0cf7eb0..78e4a767b1d 100644 --- a/apps/debughook.c +++ b/apps/debughook.c @@ -50,7 +50,7 @@ DebugHook(void) UINT8 *data = NULL; UINTN dataSize = 0; EFI_STATUS efi_status; - register volatile UINTN x = 0; + register volatile unsigned long long x = 0; extern char _text, _data; if (x) @@ -71,7 +71,7 @@ DebugHook(void) while (x++) { /* Make this so it can't /totally/ DoS us. */ #if defined(__x86_64__) || defined(__i386__) || defined(__i686__) - if (x > 4294967294) + if (x > 4294967294ULL) break; __asm__ __volatile__("pause"); #elif defined(__aarch64__) -- 2.15.0