From: qhuang8 Date: Fri, 16 Mar 2007 09:24:10 +0000 (+0000) Subject: Fix a critical bug: When reading block succeeds but detecting MBR fails, it should... X-Git-Tag: edk2-stable201903~23412 X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=commitdiff_plain;h=3c17ed18fa4b3fd08bdeda720cc0496b48ebf331;ds=sidebyside Fix a critical bug: When reading block succeeds but detecting MBR fails, it should return error code instead of EFI_SUCCESS. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2483 6f19259b-4bc3-4df7-8a09-765794883524 --- diff --git a/EdkModulePkg/Universal/Disk/Partition/Dxe/Mbr.c b/EdkModulePkg/Universal/Disk/Partition/Dxe/Mbr.c index cf790d45e3..d71698c826 100644 --- a/EdkModulePkg/Universal/Disk/Partition/Dxe/Mbr.c +++ b/EdkModulePkg/Universal/Disk/Partition/Dxe/Mbr.c @@ -162,10 +162,13 @@ Returns: BlockIo->Media->BlockSize, Mbr ); - if (EFI_ERROR (Status) || !PartitionValidMbr (Mbr, BlockIo->Media->LastBlock)) { + if (EFI_ERROR (Status)) { Found = Status; goto Done; } + if (!PartitionValidMbr (Mbr, BlockIo->Media->LastBlock)) { + goto Done; + } // // We have a valid mbr - add each partition //