efi_loader: add protection for block_dev

Check the value of block_dev before to use this pointer.

This patch solves problem for the command "load" when ubifs
is previously mounted: in this case the function
blk_get_device_part_str("ubi 0") don't return error but return
block_dev = NULL and then data abort.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
This commit is contained in:
Patrick Delaunay 2019-04-10 11:02:58 +02:00 committed by Heinrich Schuchardt
parent 07805f203b
commit 74f5baa28b

View File

@ -968,7 +968,7 @@ efi_status_t efi_dp_from_name(const char *dev, const char *devnr,
if (!is_net) {
part = blk_get_device_part_str(dev, devnr, &desc, &fs_partition,
1);
if (part < 0)
if (part < 0 || !desc)
return EFI_INVALID_PARAMETER;
if (device)