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

Merge pull request #9690 from german77/whoops

yuzu: config: Avoid reading deleted object
liamwhite 3 лет назад
Родитель
Сommit
236f591bde
1 измененных файлов с 5 добавлено и 2 удалено
  1. 5 2
      src/yuzu/configuration/input_profiles.cpp

+ 5 - 2
src/yuzu/configuration/input_profiles.cpp

@@ -58,13 +58,16 @@ std::vector<std::string> InputProfiles::GetInputProfileNames() {
     std::vector<std::string> profile_names;
     profile_names.reserve(map_profiles.size());
 
-    for (const auto& [profile_name, config] : map_profiles) {
+    auto it = map_profiles.cbegin();
+    while (it != map_profiles.cend()) {
+        const auto& [profile_name, config] = *it;
         if (!ProfileExistsInFilesystem(profile_name)) {
-            DeleteProfile(profile_name);
+            it = map_profiles.erase(it);
             continue;
         }
 
         profile_names.push_back(profile_name);
+        ++it;
     }
 
     std::stable_sort(profile_names.begin(), profile_names.end());