From 4558491f8717c2ff8d1a3eeb1cd2af7322758612 Mon Sep 17 00:00:00 2001 From: Ruiyu Ni Date: Fri, 30 Sep 2016 12:29:24 +0800 Subject: MdeModulePkg/HiiDataBase: Fix NULL deference bug in HiiGetImageInfo The return value of GetImageIdOrAddress() could be NULL if the ImageId is invalid. The patch fixes the bug to return EFI_NOT_FOUND when GetImageIdOrAddress() returns NULL. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ruiyu Ni Reviewed-by: Liming Gao --- MdeModulePkg/Universal/HiiDatabaseDxe/ImageEx.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'MdeModulePkg/Universal') diff --git a/MdeModulePkg/Universal/HiiDatabaseDxe/ImageEx.c b/MdeModulePkg/Universal/HiiDatabaseDxe/ImageEx.c index 1e3f3bd1c8..33dbc7d5d5 100644 --- a/MdeModulePkg/Universal/HiiDatabaseDxe/ImageEx.c +++ b/MdeModulePkg/Universal/HiiDatabaseDxe/ImageEx.c @@ -361,6 +361,10 @@ HiiGetImageInfo ( // Find the image block specified by ImageId // CurrentImageBlock = GetImageIdOrAddress (ImagePackage->ImageBlock, &ImageId); + if (CurrentImageBlock == NULL) { + return EFI_NOT_FOUND; + } + switch (CurrentImageBlock->BlockType) { case EFI_HII_IIBT_IMAGE_JPEG: case EFI_HII_IIBT_IMAGE_PNG: -- cgit v1.2.3