From: Oliver Steffen Date: Fri, 26 May 2023 11:35:50 +0000 (+0200) Subject: kern: Check for NULL when closing devices and disks X-Git-Tag: grub-2.12-rc1~43 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d09387287b7bbd7770bc9d172cc0e06181183e02;p=thirdparty%2Fgrub.git kern: Check for NULL when closing devices and disks Add checks for NULL pointers to grub_device_close() and grub_disk_close() to make these functions more robust. Signed-off-by: Oliver Steffen Reviewed-by: Daniel Kiper --- diff --git a/grub-core/kern/device.c b/grub-core/kern/device.c index 92ce8a75e..670e213cf 100644 --- a/grub-core/kern/device.c +++ b/grub-core/kern/device.c @@ -71,6 +71,9 @@ grub_device_open (const char *name) grub_err_t grub_device_close (grub_device_t device) { + if (device == NULL) + return GRUB_ERR_NONE; + if (device->disk) grub_disk_close (device->disk); diff --git a/grub-core/kern/disk.c b/grub-core/kern/disk.c index eb0c7bb73..1eda58fe9 100644 --- a/grub-core/kern/disk.c +++ b/grub-core/kern/disk.c @@ -292,6 +292,10 @@ void grub_disk_close (grub_disk_t disk) { grub_partition_t part; + + if (disk == NULL) + return; + grub_dprintf ("disk", "Closing `%s'.\n", disk->name); if (disk->dev && disk->dev->disk_close)