Просмотр исходного кода

Merge pull request #12986 from t895/input-config-clear-fix

config: Always delete control settings in ClearControlPlayerValues
liamwhite 2 лет назад
Родитель
Сommit
98db796fde
1 измененных файлов с 2 добавлено и 8 удалено
  1. 2 8
      src/frontend_common/config.cpp

+ 2 - 8
src/frontend_common/config.cpp

@@ -867,15 +867,9 @@ void Config::Reload() {
 }
 }
 
 
 void Config::ClearControlPlayerValues() const {
 void Config::ClearControlPlayerValues() const {
-    // If key is an empty string, all keys in the current group() are removed.
+    // Removes the entire [Controls] section
     const char* section = Settings::TranslateCategory(Settings::Category::Controls);
     const char* section = Settings::TranslateCategory(Settings::Category::Controls);
-    CSimpleIniA::TNamesDepend keys;
-    config->GetAllKeys(section, keys);
-    for (const auto& key : keys) {
-        if (std::string(config->GetValue(section, key.pItem)).empty()) {
-            config->Delete(section, key.pItem);
-        }
-    }
+    config->Delete(section, nullptr, true);
 }
 }
 
 
 const std::string& Config::GetConfigFilePath() const {
 const std::string& Config::GetConfigFilePath() const {