mirror of https://github.com/acidanthera/audk.git
Update code logic, remove ASSERT and use error handling.
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Eric Dong <eric.dong@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15403 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
3bf04a71bf
commit
2c775600d5
|
@ -2,7 +2,7 @@
|
||||||
This is an example of how a driver might export data to the HII protocol to be
|
This is an example of how a driver might export data to the HII protocol to be
|
||||||
later utilized by the Setup Protocol
|
later utilized by the Setup Protocol
|
||||||
|
|
||||||
Copyright (c) 2004 - 2013, Intel Corporation. All rights reserved.<BR>
|
Copyright (c) 2004 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||||
This program and the accompanying materials
|
This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
|
@ -1981,25 +1981,40 @@ DriverSampleInit (
|
||||||
sizeof (DRIVER_SAMPLE_CONFIGURATION),
|
sizeof (DRIVER_SAMPLE_CONFIGURATION),
|
||||||
Configuration
|
Configuration
|
||||||
);
|
);
|
||||||
ASSERT (Status == EFI_SUCCESS);
|
if (EFI_ERROR (Status)) {
|
||||||
|
DriverSampleUnload (ImageHandle);
|
||||||
|
return Status;
|
||||||
|
}
|
||||||
//
|
//
|
||||||
// EFI variable for NV config doesn't exit, we should build this variable
|
// EFI variable for NV config doesn't exit, we should build this variable
|
||||||
// based on default values stored in IFR
|
// based on default values stored in IFR
|
||||||
//
|
//
|
||||||
ActionFlag = HiiSetToDefaults (NameRequestHdr, EFI_HII_DEFAULT_CLASS_STANDARD);
|
ActionFlag = HiiSetToDefaults (NameRequestHdr, EFI_HII_DEFAULT_CLASS_STANDARD);
|
||||||
ASSERT (ActionFlag);
|
if (!ActionFlag) {
|
||||||
|
DriverSampleUnload (ImageHandle);
|
||||||
|
return EFI_INVALID_PARAMETER;
|
||||||
|
}
|
||||||
|
|
||||||
ActionFlag = HiiSetToDefaults (ConfigRequestHdr, EFI_HII_DEFAULT_CLASS_STANDARD);
|
ActionFlag = HiiSetToDefaults (ConfigRequestHdr, EFI_HII_DEFAULT_CLASS_STANDARD);
|
||||||
ASSERT (ActionFlag);
|
if (!ActionFlag) {
|
||||||
|
DriverSampleUnload (ImageHandle);
|
||||||
|
return EFI_INVALID_PARAMETER;
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
//
|
//
|
||||||
// EFI variable does exist and Validate Current Setting
|
// EFI variable does exist and Validate Current Setting
|
||||||
//
|
//
|
||||||
ActionFlag = HiiValidateSettings (NameRequestHdr);
|
ActionFlag = HiiValidateSettings (NameRequestHdr);
|
||||||
ASSERT (ActionFlag);
|
if (!ActionFlag) {
|
||||||
|
DriverSampleUnload (ImageHandle);
|
||||||
|
return EFI_INVALID_PARAMETER;
|
||||||
|
}
|
||||||
|
|
||||||
ActionFlag = HiiValidateSettings (ConfigRequestHdr);
|
ActionFlag = HiiValidateSettings (ConfigRequestHdr);
|
||||||
ASSERT (ActionFlag);
|
if (!ActionFlag) {
|
||||||
|
DriverSampleUnload (ImageHandle);
|
||||||
|
return EFI_INVALID_PARAMETER;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
FreePool (ConfigRequestHdr);
|
FreePool (ConfigRequestHdr);
|
||||||
|
|
||||||
|
@ -2025,19 +2040,28 @@ DriverSampleInit (
|
||||||
sizeof (MY_EFI_VARSTORE_DATA),
|
sizeof (MY_EFI_VARSTORE_DATA),
|
||||||
VarStoreConfig
|
VarStoreConfig
|
||||||
);
|
);
|
||||||
ASSERT (Status == EFI_SUCCESS);
|
if (EFI_ERROR (Status)) {
|
||||||
|
DriverSampleUnload (ImageHandle);
|
||||||
|
return Status;
|
||||||
|
}
|
||||||
//
|
//
|
||||||
// EFI variable for NV config doesn't exit, we should build this variable
|
// EFI variable for NV config doesn't exit, we should build this variable
|
||||||
// based on default values stored in IFR
|
// based on default values stored in IFR
|
||||||
//
|
//
|
||||||
ActionFlag = HiiSetToDefaults (ConfigRequestHdr, EFI_HII_DEFAULT_CLASS_STANDARD);
|
ActionFlag = HiiSetToDefaults (ConfigRequestHdr, EFI_HII_DEFAULT_CLASS_STANDARD);
|
||||||
ASSERT (ActionFlag);
|
if (!ActionFlag) {
|
||||||
|
DriverSampleUnload (ImageHandle);
|
||||||
|
return EFI_INVALID_PARAMETER;
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
//
|
//
|
||||||
// EFI variable does exist and Validate Current Setting
|
// EFI variable does exist and Validate Current Setting
|
||||||
//
|
//
|
||||||
ActionFlag = HiiValidateSettings (ConfigRequestHdr);
|
ActionFlag = HiiValidateSettings (ConfigRequestHdr);
|
||||||
ASSERT (ActionFlag);
|
if (!ActionFlag) {
|
||||||
|
DriverSampleUnload (ImageHandle);
|
||||||
|
return EFI_INVALID_PARAMETER;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
FreePool (ConfigRequestHdr);
|
FreePool (ConfigRequestHdr);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue