summaryrefslogtreecommitdiffstats
path: root/src/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'src/drivers')
-rw-r--r--src/drivers/block/ibft.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/drivers/block/ibft.c b/src/drivers/block/ibft.c
index a9d21f9ac..bb7812b3b 100644
--- a/src/drivers/block/ibft.c
+++ b/src/drivers/block/ibft.c
@@ -591,6 +591,12 @@ static int ibft_install ( int ( * install ) ( struct acpi_header *acpi ) ) {
strings.len = 0;
len = offset;
+ /* Do nothing if no targets exist */
+ if ( ! targets ) {
+ rc = 0;
+ goto no_targets;
+ }
+
/* Allocate table */
data = zalloc ( len );
if ( ! data ) {
@@ -668,6 +674,7 @@ static int ibft_install ( int ( * install ) ( struct acpi_header *acpi ) ) {
err_initiator:
free ( data );
err_alloc:
+ no_targets:
free ( strings.data );
return rc;
}