Core/BaseConfigLoader: Disallow loading the MAIN_MEMORY_CARD_SIZE from the global config INI.
This commit is contained in:
parent
63df67b7c8
commit
ff071f8b75
|
@ -19,6 +19,7 @@
|
||||||
#include "Common/IniFile.h"
|
#include "Common/IniFile.h"
|
||||||
#include "Common/Logging/Log.h"
|
#include "Common/Logging/Log.h"
|
||||||
|
|
||||||
|
#include "Core/Config/MainSettings.h"
|
||||||
#include "Core/Config/SYSCONFSettings.h"
|
#include "Core/Config/SYSCONFSettings.h"
|
||||||
#include "Core/ConfigLoaders/IsSettingSaveable.h"
|
#include "Core/ConfigLoaders/IsSettingSaveable.h"
|
||||||
#include "Core/ConfigManager.h"
|
#include "Core/ConfigManager.h"
|
||||||
|
@ -103,6 +104,11 @@ public:
|
||||||
BaseConfigLayerLoader() : ConfigLayerLoader(Config::LayerType::Base) {}
|
BaseConfigLayerLoader() : ConfigLayerLoader(Config::LayerType::Base) {}
|
||||||
void Load(Config::Layer* layer) override
|
void Load(Config::Layer* layer) override
|
||||||
{
|
{
|
||||||
|
// List of settings that under no circumstances should be loaded from the global config INI.
|
||||||
|
static const auto s_setting_disallowed = {
|
||||||
|
&Config::MAIN_MEMORY_CARD_SIZE.GetLocation(),
|
||||||
|
};
|
||||||
|
|
||||||
LoadFromSYSCONF(layer);
|
LoadFromSYSCONF(layer);
|
||||||
for (const auto& system : system_to_ini)
|
for (const auto& system : system_to_ini)
|
||||||
{
|
{
|
||||||
|
@ -118,6 +124,12 @@ public:
|
||||||
for (const auto& value : section_map)
|
for (const auto& value : section_map)
|
||||||
{
|
{
|
||||||
const Config::Location location{system.first, section_name, value.first};
|
const Config::Location location{system.first, section_name, value.first};
|
||||||
|
const bool load_disallowed =
|
||||||
|
std::any_of(begin(s_setting_disallowed), end(s_setting_disallowed),
|
||||||
|
[&location](const Config::Location* l) { return *l == location; });
|
||||||
|
if (load_disallowed)
|
||||||
|
continue;
|
||||||
|
|
||||||
layer->Set(location, value.second);
|
layer->Set(location, value.second);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue