summaryrefslogtreecommitdiff
path: root/Source/Core/InputCommon/Src/InputConfig.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Core/InputCommon/Src/InputConfig.cpp')
-rw-r--r--Source/Core/InputCommon/Src/InputConfig.cpp13
1 files changed, 10 insertions, 3 deletions
diff --git a/Source/Core/InputCommon/Src/InputConfig.cpp b/Source/Core/InputCommon/Src/InputConfig.cpp
index b9d2a93b99..19be23ec74 100644
--- a/Source/Core/InputCommon/Src/InputConfig.cpp
+++ b/Source/Core/InputCommon/Src/InputConfig.cpp
@@ -26,10 +26,13 @@ InputPlugin::~InputPlugin()
delete *i;
}
-bool InputPlugin::LoadConfig()
+bool InputPlugin::LoadConfig(std::string ini)
{
IniFile inifile;
- if (inifile.Load(File::GetUserPath(D_CONFIG_IDX) + ini_name + ".ini"))
+ std::string ini2 = ini;
+ if (ini == "")
+ ini = ini_name;
+ if (inifile.Load(File::GetUserPath(D_CONFIG_IDX) + ini + ".ini"))
{
std::vector< ControllerEmu* >::const_iterator
i = controllers.begin(),
@@ -37,7 +40,11 @@ bool InputPlugin::LoadConfig()
for (; i!=e; ++i)
{
// load settings from ini
- (*i)->LoadConfig(inifile.GetOrCreateSection((*i)->GetName().c_str()));
+ std::string section;
+ section = (*i)->GetName();
+ if (ini2 != "")
+ section = "Profile";
+ (*i)->LoadConfig(inifile.GetOrCreateSection(section.c_str()));
// update refs
(*i)->UpdateReferences(g_controller_interface);
}