From 304a39b746f947398d2b084ef8623a51f21e49d0 Mon Sep 17 00:00:00 2001 From: rsun3 Date: Fri, 17 Dec 2010 02:38:26 +0000 Subject: Fix a bug that the size of a gate descriptor in the IDT is 8 bytes. The size is 8 bytes in 32-bit mode, while it is 16 bytes in 64-bit mode. Replace the hard-coded size with a sizeof. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11177 6f19259b-4bc3-4df7-8a09-765794883524 --- UefiCpuPkg/CpuDxe/CpuDxe.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'UefiCpuPkg') diff --git a/UefiCpuPkg/CpuDxe/CpuDxe.c b/UefiCpuPkg/CpuDxe/CpuDxe.c index c5f3bb76f4..6e7498344e 100644 --- a/UefiCpuPkg/CpuDxe/CpuDxe.c +++ b/UefiCpuPkg/CpuDxe/CpuDxe.c @@ -1082,7 +1082,7 @@ InitInterruptDescriptorTable ( if ((OldIdtPtr.Base != 0) && ((OldIdtPtr.Limit & 7) == 7)) { OldIdt = (IA32_IDT_GATE_DESCRIPTOR*) OldIdtPtr.Base; - OldIdtSize = (OldIdtPtr.Limit + 1) / 8; + OldIdtSize = (OldIdtPtr.Limit + 1) / sizeof (IA32_IDT_GATE_DESCRIPTOR); } else { OldIdt = NULL; OldIdtSize = 0; -- cgit v1.2.3