MdeModulePkg: Add assertion to make code easier for read.
authorRuiyu Ni <ruiyu.ni@intel.com>
Wed, 20 May 2015 07:41:01 +0000 (07:41 +0000)
committerniruiyu <niruiyu@Edk2>
Wed, 20 May 2015 07:41:01 +0000 (07:41 +0000)
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17483 6f19259b-4bc3-4df7-8a09-765794883524

MdeModulePkg/Library/UefiBootManagerLib/BmLoadOption.c

index 2a42a7d..6b9690a 100644 (file)
@@ -100,6 +100,8 @@ BmGetFreeOptionNumber (
           LoadOptionType == LoadOptionTypeSysPrep);\r
 \r
   GetEfiGlobalVariable2 (mBmLoadOptionOrderName[LoadOptionType], (VOID **) &OptionOrder, &OptionOrderSize);\r
+  ASSERT ((OptionOrder != NULL && OptionOrderSize != 0) || (OptionOrder == NULL && OptionOrderSize == 0));\r
+\r
   BootNext = NULL;\r
   if (LoadOptionType == LoadOptionTypeBoot) {\r
     GetEfiGlobalVariable2 (L"BootNext", (VOID**) &BootNext, NULL);\r
@@ -268,6 +270,7 @@ BmAddOptionNumberToOrderVariable (
   // Update the option order variable\r
   //\r
   GetEfiGlobalVariable2 (OptionOrderName, (VOID **) &OptionOrder, &OptionOrderSize);\r
+  ASSERT ((OptionOrder != NULL && OptionOrderSize != 0) || (OptionOrder == NULL && OptionOrderSize == 0));\r
 \r
   Status = EFI_SUCCESS;\r
   for (Index = 0; Index < OptionOrderSize / sizeof (UINT16); Index++) {\r
@@ -557,6 +560,8 @@ EfiBootManagerDeleteLoadOptionVariable (
     // If the associated *Order exists, just remove the reference in *Order.\r
     //\r
     GetEfiGlobalVariable2 (mBmLoadOptionOrderName[OptionType], (VOID **) &OptionOrder, &OptionOrderSize);\r
+    ASSERT ((OptionOrder != NULL && OptionOrderSize != 0) || (OptionOrder == NULL && OptionOrderSize == 0));\r
+\r
     for (Index = 0; Index < OptionOrderSize / sizeof (UINT16); Index++) {\r
       if (OptionOrder[Index] == OptionNumber) {\r
         OptionOrderSize -= sizeof (UINT16);\r