Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Chen Fan <[email protected]>
---
 IntelFrameworkModulePkg/Library/GenericBdsLib/BdsBoot.c | 2 ++
 IntelFrameworkModulePkg/Library/GenericBdsLib/BdsMisc.c | 4 ++++
 2 files changed, 6 insertions(+)

diff --git a/IntelFrameworkModulePkg/Library/GenericBdsLib/BdsBoot.c 
b/IntelFrameworkModulePkg/Library/GenericBdsLib/BdsBoot.c
index c58c6fd..18a370e 100644
--- a/IntelFrameworkModulePkg/Library/GenericBdsLib/BdsBoot.c
+++ b/IntelFrameworkModulePkg/Library/GenericBdsLib/BdsBoot.c
@@ -3568,6 +3568,8 @@ BdsLibBootNext (
     ASSERT (BootOption != NULL);
     BdsLibConnectDevicePath (BootOption->DevicePath);
     BdsLibBootViaBootOption (BootOption, BootOption->DevicePath, 
&ExitDataSize, &ExitData);
+    FreePool(BootOption);
+    FreePool(BootNext);
   }
 
 }
diff --git a/IntelFrameworkModulePkg/Library/GenericBdsLib/BdsMisc.c 
b/IntelFrameworkModulePkg/Library/GenericBdsLib/BdsMisc.c
index 7b3f205..dbb1322 100644
--- a/IntelFrameworkModulePkg/Library/GenericBdsLib/BdsMisc.c
+++ b/IntelFrameworkModulePkg/Library/GenericBdsLib/BdsMisc.c
@@ -168,6 +168,7 @@ BdsLibGetFreeOptionNumber (
     if (OptionBuffer == NULL) {
       break;
     }
+    FreePool(OptionBuffer);
     Index++;
   } while (TRUE);
 
@@ -265,6 +266,7 @@ BdsLibRegisterNewOption (
     // Validate the variable.
     //
     if (!ValidateOption(OptionPtr, OptionSize)) {
+      FreePool(OptionPtr);
       continue;
     }
 
@@ -626,6 +628,7 @@ BdsLibVariableToOption (
   // Validate Boot#### variable data.
   //
   if (!ValidateOption(Variable, VariableSize)) {
+    FreePool (Variable);
     return NULL;
   }
 
@@ -674,6 +677,7 @@ BdsLibVariableToOption (
   //
   Option = AllocateZeroPool (sizeof (BDS_COMMON_OPTION));
   if (Option == NULL) {
+    FreePool (Variable);
     return NULL;
   }
 
-- 
1.9.3


------------------------------------------------------------------------------
Want fast and easy access to all the code in your enterprise? Index and
search up to 200,000 lines of code with a free copy of Black Duck
Code Sight - the same software that powers the world's largest code
search on Ohloh, the Black Duck Open Hub! Try it now.
http://p.sf.net/sfu/bds
_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-devel

Reply via email to