]> git.ipfire.org Git - thirdparty/grub.git/commitdiff
efidisk: Write to NULL pointer ldp
authorEric Snowberg <eric.snowberg@oracle.com>
Thu, 28 Mar 2019 20:32:31 +0000 (14:32 -0600)
committerDaniel Kiper <daniel.kiper@oracle.com>
Tue, 2 Apr 2019 11:07:14 +0000 (13:07 +0200)
Function grub_efi_find_last_device_path() may return constant NULL when
called from find_parent_device().

Signed-off-by: Eric Snowberg <eric.snowberg@oracle.com>
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
grub-core/disk/efi/efidisk.c

index 0f132f5595df1972ea9f4123dc894b784b6c56ff..961c1552bfef3d5c75591705c10ffb02e5df2632 100644 (file)
@@ -129,6 +129,9 @@ find_parent_device (struct grub_efidisk_data *devices,
     return 0;
 
   ldp = grub_efi_find_last_device_path (dp);
+  if (! ldp)
+    return 0;
+
   ldp->type = GRUB_EFI_END_DEVICE_PATH_TYPE;
   ldp->subtype = GRUB_EFI_END_ENTIRE_DEVICE_PATH_SUBTYPE;
   ldp->length = sizeof (*ldp);