summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRuiyu Ni <ruiyu.ni@intel.com>2017-04-11 10:07:43 +0800
committerGuo Mang <mang.guo@intel.com>2017-07-12 11:24:17 +0800
commit2ed2ec4d1d5618a3abfa2c8b6d2f9366e7c31133 (patch)
treedd984208d7c212d5d70d105ececaefdeb1a04721
parent9d77b1ad14ef183d9d87c842c2f2773677e326c6 (diff)
downloadedk2-platforms-2ed2ec4d1d5618a3abfa2c8b6d2f9366e7c31133.tar.xz
MdeModulePkg/BootManagerMenu: Add assertion to indicate no DIV by 0
BootMenuSelectItem() contains code to DIV BootMenuData->ItemCount. When BootMenuData->ItemCount can be 0, the DIV operation may trigger CPU exception. But in logic, this case won't happen. So add assertion to indicate it. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com> Reviewed-by: Hao A Wu <hao.a.wu@intel.com> (cherry picked from commit 51a1db9b24d850c785d240da599c4bf9ba1c0fd3)
-rw-r--r--Core/MdeModulePkg/Application/BootManagerMenuApp/BootManagerMenu.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/Core/MdeModulePkg/Application/BootManagerMenuApp/BootManagerMenu.c b/Core/MdeModulePkg/Application/BootManagerMenuApp/BootManagerMenu.c
index 6d493e1250..a25f2ca298 100644
--- a/Core/MdeModulePkg/Application/BootManagerMenuApp/BootManagerMenu.c
+++ b/Core/MdeModulePkg/Application/BootManagerMenuApp/BootManagerMenu.c
@@ -1,7 +1,7 @@
/** @file
The application to show the Boot Manager Menu.
-Copyright (c) 2011 - 2016, Intel Corporation. All rights reserved.<BR>
+Copyright (c) 2011 - 2017, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License
which accompanies this distribution. The full text of the license may be found at
@@ -374,6 +374,7 @@ BootMenuSelectItem (
if (BootMenuData == NULL || WantSelectItem >= BootMenuData->ItemCount) {
return EFI_INVALID_PARAMETER;
}
+ ASSERT (BootMenuData->ItemCount != 0);
SavedAttribute = gST->ConOut->Mode->Attribute;
RePaintItems = FALSE;
StartCol = BootMenuData->MenuScreen.StartCol;