Bladeren bron

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 <pjones@redhat.com>
Signed-off-by: Nigel Croxon <ncroxon@redhat.com>
Peter Jones 7 jaren geleden
bovenliggende
commit
25cebcee2a
1 gewijzigde bestanden met toevoegingen van 2 en 2 verwijderingen
  1. 2 2
      apps/debughook.c

+ 2 - 2
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__)