Reviewed-by: Liming Gao <[email protected]>

> -----Original Message-----
> From: Bi, Dandan
> Sent: Friday, August 19, 2016 2:16 PM
> To: [email protected]
> Cc: Gao, Liming <[email protected]>; Dong, Eric <[email protected]>
> Subject: [patch] MdeModulePkg/Browser: Fix conflicting policy in getting
> default of checkbox
> 
> From: Liming Gao <[email protected]>
> 
> We have added a new policy to get default value for question:
> get default from other default id if current default is not specified.
> But when getting default value for checkbox, if the default
> flag is not set, it will set the default value to FALSE for checkbox.
> This behavior in checkbox conflicts with the new added policy,
> so now we move this behavior to the end of getting default form other
> default id.
> 
> Cc: Liming Gao <[email protected]>
> Cc: Eric Dong <[email protected]>
> Contributed-under: TianoCore Contribution Agreement 1.0
> Signed-off-by: Dandan Bi <[email protected]>
> ---
>  MdeModulePkg/Universal/SetupBrowserDxe/Setup.c | 7 +++++--
>  1 file changed, 5 insertions(+), 2 deletions(-)
> 
> diff --git a/MdeModulePkg/Universal/SetupBrowserDxe/Setup.c
> b/MdeModulePkg/Universal/SetupBrowserDxe/Setup.c
> index cd3c8cc..00f4b41 100644
> --- a/MdeModulePkg/Universal/SetupBrowserDxe/Setup.c
> +++ b/MdeModulePkg/Universal/SetupBrowserDxe/Setup.c
> @@ -4239,12 +4239,10 @@ ReGetDefault:
>        //
>        if (((DefaultId == EFI_HII_DEFAULT_CLASS_STANDARD) && ((Question-
> >Flags & EFI_IFR_CHECKBOX_DEFAULT) != 0)) ||
>            ((DefaultId == EFI_HII_DEFAULT_CLASS_MANUFACTURING) &&
> ((Question->Flags & EFI_IFR_CHECKBOX_DEFAULT_MFG) != 0))
>           ) {
>          HiiValue->Value.b = TRUE;
> -      } else {
> -        HiiValue->Value.b = FALSE;
>        }
> 
>        return EFI_SUCCESS;
>      }
>    }
> @@ -4267,10 +4265,15 @@ ReGetDefault:
>    //
>    // For Questions without default value for all the default id in the
> DefaultStoreList.
>    //
>    Status = EFI_NOT_FOUND;
>    switch (Question->Operand) {
> +  case EFI_IFR_CHECKBOX_OP:
> +    HiiValue->Value.b = FALSE;
> +    Status = EFI_SUCCESS;
> +    break;
> +
>    case EFI_IFR_NUMERIC_OP:
>      //
>      // Take minimum value as numeric default value
>      //
>      if ((Question->Flags & EFI_IFR_DISPLAY) == 0) {
> --
> 1.9.5.msysgit.1

_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to