MCPcopy Create free account
hub / github.com/CloverHackyColor/CloverBootloader / GetUserSettings

Function GetUserSettings

rEFIt_UEFI/Platform/Settings.cpp:4811–5997  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

4809}
4810
4811EFI_STATUS
4812GetUserSettings(const TagDict* CfgDict)
4813{
4814 EFI_STATUS Status = EFI_NOT_FOUND;
4815
4816 if (CfgDict != NULL) {
4817 DbgHeader ("GetUserSettings");
4818
4819 // Boot settings.
4820 // Discussion. Why Arguments is here? It should be SystemParameters property!
4821 // we will read them again because of change in GUI menu. It is not only EarlySettings
4822 //
4823 const TagDict* BootDict = CfgDict->dictPropertyForKey("Boot");
4824 if (BootDict != NULL) {
4825
4826 const TagStruct* Prop = BootDict->propertyForKey("Arguments");
4827 if ( Prop != NULL && Prop->isString() && Prop->getString()->stringValue().notEmpty() && !gSettings.BootArgs.contains(Prop->getString()->stringValue()) ) {
4828 gSettings.BootArgs = Prop->getString()->stringValue();
4829 //gBootArgsChanged = TRUE;
4830 //gBootChanged = TRUE;
4831 }
4832
4833 Prop = BootDict->propertyForKey("NeverDoRecovery");
4834 gSettings.NeverDoRecovery = IsPropertyNotNullAndTrue(Prop);
4835 }
4836
4837
4838 //Graphics
4839
4840 const TagDict* GraphicsDict = CfgDict->dictPropertyForKey("Graphics");
4841 if (GraphicsDict != NULL) {
4842 INTN i;
4843 const TagStruct* Prop = GraphicsDict->propertyForKey("Inject");
4844 if (Prop != NULL) {
4845 if (IsPropertyNotNullAndTrue(Prop)) {
4846 gSettings.GraphicsInjector = TRUE;
4847 gSettings.InjectIntel = TRUE;
4848 gSettings.InjectATI = TRUE;
4849 gSettings.InjectNVidia = TRUE;
4850 } else if (Prop->isDict()) {
4851 const TagDict* Dict2 = Prop->getDict();
4852 const TagStruct* Prop2 = Dict2->propertyForKey("Intel");
4853 if (Prop2 != NULL) {
4854 gSettings.InjectIntel = IsPropertyNotNullAndTrue(Prop2);
4855 }
4856
4857 Prop2 = Dict2->propertyForKey("ATI");
4858 if (Prop2 != NULL) {
4859 gSettings.InjectATI = IsPropertyNotNullAndTrue(Prop2);
4860 }
4861
4862 Prop2 = Dict2->propertyForKey("NVidia");
4863 if (Prop2 != NULL) {
4864 gSettings.InjectNVidia = IsPropertyNotNullAndTrue(Prop2);
4865 }
4866 } else {
4867 gSettings.GraphicsInjector = FALSE;
4868 gSettings.InjectIntel = FALSE;

Callers 3

ApplyInputsFunction · 0.85
StartLoaderMethod · 0.85
RefitMainFunction · 0.85

Calls 15

DbgHeaderFunction · 0.85
IsPropertyNotNullAndTrueFunction · 0.85
GetPropertyAsIntegerFunction · 0.85
hex2binFunction · 0.85
GetEDIDSettingsFunction · 0.85
FillCardListFunction · 0.85
ConvertTextToDevicePathFunction · 0.85
S8PrintfFunction · 0.85
hexstrtouint8Function · 0.85
AllocateCopyPoolFunction · 0.85
GetDataSettingFunction · 0.85

Tested by

no test coverage detected