From 2ad29d0fe4433548311df28d2b0f21be1d07168b Mon Sep 17 00:00:00 2001 From: erictian Date: Thu, 20 May 2010 09:12:12 +0000 Subject: [PATCH] fix a bug that FindVariable() may set GoneThrough flag wrongly when a >64K variable exists. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10524 6f19259b-4bc3-4df7-8a09-765794883524 --- MdeModulePkg/Universal/Variable/Pei/Variable.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MdeModulePkg/Universal/Variable/Pei/Variable.c b/MdeModulePkg/Universal/Variable/Pei/Variable.c index 5424aa501f..c353e6ba30 100644 --- a/MdeModulePkg/Universal/Variable/Pei/Variable.c +++ b/MdeModulePkg/Universal/Variable/Pei/Variable.c @@ -492,7 +492,7 @@ FindVariable ( // // If gone through the VariableStore, that means we never find in Firmware any more. // - if (IndexTable->Length < VARIABLE_INDEX_TABLE_VOLUME) { + if ((IndexTable->Length < VARIABLE_INDEX_TABLE_VOLUME) && (!StopRecord)) { IndexTable->GoneThrough = 1; }