diff options
Diffstat (limited to 'src/image/efi_image.c')
-rw-r--r-- | src/image/efi_image.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/image/efi_image.c b/src/image/efi_image.c index 83da9d9bf..b7d8f9c6e 100644 --- a/src/image/efi_image.c +++ b/src/image/efi_image.c @@ -280,12 +280,17 @@ static int efi_image_exec ( struct image *image ) { */ static int efi_image_probe ( struct image *image ) { EFI_BOOT_SERVICES *bs = efi_systab->BootServices; + static EFI_DEVICE_PATH_PROTOCOL empty_path = { + .Type = END_DEVICE_PATH_TYPE, + .SubType = END_ENTIRE_DEVICE_PATH_SUBTYPE, + .Length[0] = sizeof ( empty_path ), + }; EFI_HANDLE handle; EFI_STATUS efirc; int rc; /* Attempt loading image */ - if ( ( efirc = bs->LoadImage ( FALSE, efi_image_handle, NULL, + if ( ( efirc = bs->LoadImage ( FALSE, efi_image_handle, &empty_path, user_to_virt ( image->data, 0 ), image->len, &handle ) ) != 0 ) { /* Not an EFI image */ |