
Calloc may return NULL. We should check the return value.
Signed-off-by: Heinrich Schuchardt xypron.glpk@gmx.de --- lib/efi_loader/efi_disk.c | 13 +++++++++++++ 1 file changed, 13 insertions(+)
diff --git a/lib/efi_loader/efi_disk.c b/lib/efi_loader/efi_disk.c index e61dbc8058..c6f0d732c1 100644 --- a/lib/efi_loader/efi_disk.c +++ b/lib/efi_loader/efi_disk.c @@ -196,6 +196,15 @@ efi_fs_from_path(struct efi_device_path *fp) return diskobj->volume; }
+/* + * Create a device for a disk + * + * @name not used + * @if_typename interface name for block device + * @desc internal block device + * @dev_index device index for block device + * @offset offset into disk for simple partitions + */ static void efi_disk_add_dev(const char *name, const char *if_typename, struct blk_desc *desc, @@ -210,6 +219,10 @@ static void efi_disk_add_dev(const char *name, return;
diskobj = calloc(1, sizeof(*diskobj)); + if (!diskobj) { + printf("ERROR: Out of memory\n"); + return; + }
/* Fill in object data */ diskobj->dp = efi_dp_from_part(desc, part);