mirror of https://github.com/acidanthera/audk.git
OvmfPkg/X86QemuLoadImageLib: fix "unused variable" error in X64 DXE builds
When the MDE_CPU_IA32 macro is not defined, there is no access to the
"KernelImageHandle" local variable in QemuStartKernelImage(). This breaks
the OvmfPkgIa32X64 and OvmfPkgX64 platform builds, at least with gcc-8.
Move the local variable to the inner scope, where declaration and usage
are inseparable.
(Note that such inner-scope declarations are frowned upon in the wider
edk2 codebase, but we use them liberally in ArmVirtPkg and OvmfPkg anyway,
because they help us reason about variable lifetime and visibility.)
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Philippe Mathieu-Daudé <philmd@redhat.com>
Fixes: 7c47d89003
Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=2572
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
This commit is contained in:
parent
40d572f70d
commit
a3e25cc8a1
|
@ -460,7 +460,6 @@ QemuStartKernelImage (
|
|||
{
|
||||
EFI_STATUS Status;
|
||||
OVMF_LOADED_X86_LINUX_KERNEL *LoadedImage;
|
||||
EFI_HANDLE KernelImageHandle;
|
||||
|
||||
Status = gBS->OpenProtocol (
|
||||
*ImageHandle,
|
||||
|
@ -481,6 +480,8 @@ QemuStartKernelImage (
|
|||
);
|
||||
#ifdef MDE_CPU_IA32
|
||||
if (Status == EFI_UNSUPPORTED) {
|
||||
EFI_HANDLE KernelImageHandle;
|
||||
|
||||
//
|
||||
// On IA32, EFI_UNSUPPORTED means that the image's machine type is X64 while
|
||||
// we are expecting a IA32 one, and the StartImage () boot service is unable
|
||||
|
|
Loading…
Reference in New Issue