]> git.proxmox.com Git - mirror_edk2.git/commitdiff
Refine the logic about getting Value info to avoid check data error.
authorydong10 <ydong10@6f19259b-4bc3-4df7-8a09-765794883524>
Fri, 16 Sep 2011 01:22:39 +0000 (01:22 +0000)
committerydong10 <ydong10@6f19259b-4bc3-4df7-8a09-765794883524>
Fri, 16 Sep 2011 01:22:39 +0000 (01:22 +0000)
Signed-off-by: ydong10
Reviewed-by: lgao4
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12360 6f19259b-4bc3-4df7-8a09-765794883524

MdeModulePkg/Universal/SetupBrowserDxe/Setup.c

index 88f965059f1dd1c41e9e8433d9be9a94fbe5cb78..2b0f052060972bdfd31cea3ddb25bbc50cea9b83 100644 (file)
@@ -1447,12 +1447,18 @@ GetQuestionValue (
       //\r
       // Skip <ConfigRequest>\r
       //\r
-      Value = Result + Length;\r
       if (IsBufferStorage) {\r
+        Value = StrStr (Result, L"&VALUE");\r
+        if (Value == NULL) {\r
+          FreePool (Result);\r
+          return EFI_NOT_FOUND;\r
+        }\r
         //\r
         // Skip "&VALUE"\r
         //\r
         Value = Value + 6;\r
+      } else {\r
+        Value = Result + Length;\r
       }\r
       if (*Value != '=') {\r
         FreePool (Result);\r