diff --git a/MdeModulePkg/Universal/HiiDatabaseDxe/ConfigRouting.c b/MdeModulePkg/Universal/HiiDatabaseDxe/ConfigRouting.c index 4f83fe3866..7ab6a6e5f0 100644 --- a/MdeModulePkg/Universal/HiiDatabaseDxe/ConfigRouting.c +++ b/MdeModulePkg/Universal/HiiDatabaseDxe/ConfigRouting.c @@ -3406,13 +3406,16 @@ HiiConfigToBlock ( if (MaxBlockSize > BufferSize) { *BlockSize = MaxBlockSize; - if (Block == NULL) { - return EFI_INVALID_PARAMETER; - } else { + if (Block != NULL) { return EFI_DEVICE_ERROR; } } + if (Block == NULL) { + *Progress = ConfigResp; + return EFI_INVALID_PARAMETER; + } + return EFI_SUCCESS; Exit: