UINT16 NumberOfStatement;\r
UINT16 NumberOfExpression;\r
EFI_IMAGE_ID *ImageId;\r
- BOOLEAN SuppressForOption;\r
- BOOLEAN InScopeOptionSuppress;\r
- BOOLEAN InScopeDisable;\r
- UINT16 DepthOfDisable;\r
- BOOLEAN OpCodeDisabled;\r
- BOOLEAN SingleOpCodeExpression;\r
- BOOLEAN InScopeDefault;\r
EFI_HII_VALUE *Value;\r
LIST_ENTRY *OneOfOptinMapEntryListHead;\r
EFI_IFR_GUID_OPTIONKEY *OptionMap;\r
EFI_IFR_ONE_OF *OneOfOpcode;\r
\r
mInScopeSubtitle = FALSE;\r
- SuppressForOption = FALSE;\r
mInScopeSuppress = FALSE;\r
- InScopeOptionSuppress = FALSE;\r
mInScopeGrayOut = FALSE;\r
- InScopeDisable = FALSE;\r
- DepthOfDisable = 0;\r
- OpCodeDisabled = FALSE;\r
- SingleOpCodeExpression = FALSE;\r
- InScopeDefault = FALSE;\r
CurrentDefault = NULL;\r
CurrentOption = NULL;\r
\r
PushScope (Operand);\r
}\r
\r
- if (OpCodeDisabled) {\r
- //\r
- // DisableIf Expression is evaluated to be TRUE, try to find its end.\r
- // Here only cares the EFI_IFR_DISABLE_IF and EFI_IFR_END\r
- //\r
- if (Operand == EFI_IFR_DISABLE_IF_OP) {\r
- DepthOfDisable++;\r
- } else if (Operand == EFI_IFR_END_OP) {\r
- Status = PopScope (&ScopeOpCode);\r
- if (EFI_ERROR (Status)) {\r
- return Status;\r
- }\r
-\r
- if (ScopeOpCode == EFI_IFR_DISABLE_IF_OP) {\r
- if (DepthOfDisable == 0) {\r
- InScopeDisable = FALSE;\r
- OpCodeDisabled = FALSE;\r
- } else {\r
- DepthOfDisable--;\r
- }\r
- }\r
- }\r
- continue;\r
- }\r
-\r
if (IsExpressionOpCode (Operand)) {\r
continue;\r
}\r
break;\r
}\r
\r
- if ((Operand == EFI_IFR_ONE_OF_OP) && Scope) {\r
- SuppressForOption = TRUE;\r
- }\r
-\r
if (Operand == EFI_IFR_ONE_OF_OP) {\r
OneOfOpcode = (EFI_IFR_ONE_OF *) OpCodeData;\r
- OneOfType = OneOfOpcode->Flags & EFI_IFR_NUMERIC_SIZE;\r
+ OneOfType = (UINT8) (OneOfOpcode->Flags & EFI_IFR_NUMERIC_SIZE);\r
}\r
break;\r
\r
CurrentStatement->HiiValue.Type = EFI_IFR_TYPE_OTHER;\r
CurrentStatement->BufferValue = AllocateZeroPool (CurrentStatement->StorageWidth);\r
\r
- if (Scope) {\r
- SuppressForOption = TRUE;\r
- }\r
break;\r
\r
case EFI_IFR_CHECKBOX_OP:\r
//\r
InsertTailList (&CurrentStatement->DefaultListHead, &CurrentDefault->Link);\r
\r
- if (Scope) {\r
- InScopeDefault = TRUE;\r
- }\r
break;\r
\r
//\r
//\r
break;\r
\r
- case EFI_IFR_SUPPRESS_IF_OP:\r
- if (SuppressForOption) {\r
- InScopeOptionSuppress = FALSE;\r
- } else {\r
- mInScopeSuppress = FALSE;\r
- }\r
- break;\r
-\r
case EFI_IFR_GRAY_OUT_IF_OP:\r
mInScopeGrayOut = FALSE;\r
break;\r
\r
- case EFI_IFR_DISABLE_IF_OP:\r
- InScopeDisable = FALSE;\r
- OpCodeDisabled = FALSE;\r
- break;\r
-\r
- case EFI_IFR_ONE_OF_OP:\r
- case EFI_IFR_ORDERED_LIST_OP:\r
- SuppressForOption = FALSE;\r
- break;\r
-\r
- case EFI_IFR_DEFAULT_OP:\r
- InScopeDefault = FALSE;\r
- break;\r
-\r
default:\r
if (IsExpressionOpCode (ScopeOpCode)) {\r
}\r