summaryrefslogtreecommitdiffstats
path: root/src/image/efi_image.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/image/efi_image.c')
-rw-r--r--src/image/efi_image.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/image/efi_image.c b/src/image/efi_image.c
index 83da9d9b..b7d8f9c6 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 */