diff options
| author | 2018-11-28 14:00:01 -0500 | |
|---|---|---|
| committer | 2018-12-03 17:20:34 -0500 | |
| commit | c381f46428268a57f0aef1d99918c8f1bb6beec7 (patch) | |
| tree | f5aa5e646596d5d57d394a56f659668911c4ac27 /src/yuzu_cmd/config.cpp | |
| parent | settings: Store list of disabled add-ons per title ID (diff) | |
| download | yuzu-c381f46428268a57f0aef1d99918c8f1bb6beec7.tar.gz yuzu-c381f46428268a57f0aef1d99918c8f1bb6beec7.tar.xz yuzu-c381f46428268a57f0aef1d99918c8f1bb6beec7.zip | |
config: Store and load disabled add-ons list
Diffstat (limited to 'src/yuzu_cmd/config.cpp')
| -rw-r--r-- | src/yuzu_cmd/config.cpp | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/yuzu_cmd/config.cpp b/src/yuzu_cmd/config.cpp index 097c1fbe3..fe0d1eebf 100644 --- a/src/yuzu_cmd/config.cpp +++ b/src/yuzu_cmd/config.cpp | |||
| @@ -3,6 +3,7 @@ | |||
| 3 | // Refer to the license.txt file included. | 3 | // Refer to the license.txt file included. |
| 4 | 4 | ||
| 5 | #include <memory> | 5 | #include <memory> |
| 6 | #include <sstream> | ||
| 6 | #include <SDL.h> | 7 | #include <SDL.h> |
| 7 | #include <inih/cpp/INIReader.h> | 8 | #include <inih/cpp/INIReader.h> |
| 8 | #include "common/file_util.h" | 9 | #include "common/file_util.h" |
| @@ -369,6 +370,23 @@ void Config::ReadValues() { | |||
| 369 | Settings::values.dump_exefs = sdl2_config->GetBoolean("Debugging", "dump_exefs", false); | 370 | Settings::values.dump_exefs = sdl2_config->GetBoolean("Debugging", "dump_exefs", false); |
| 370 | Settings::values.dump_nso = sdl2_config->GetBoolean("Debugging", "dump_nso", false); | 371 | Settings::values.dump_nso = sdl2_config->GetBoolean("Debugging", "dump_nso", false); |
| 371 | 372 | ||
| 373 | const auto title_list = sdl2_config->Get("AddOns", "title_ids", ""); | ||
| 374 | std::stringstream ss(title_list); | ||
| 375 | std::string line; | ||
| 376 | while (std::getline(ss, line, '|')) { | ||
| 377 | const auto title_id = std::stoul(line, nullptr, 16); | ||
| 378 | const auto disabled_list = sdl2_config->Get("AddOns", "disabled_" + line, ""); | ||
| 379 | |||
| 380 | std::stringstream inner_ss(disabled_list); | ||
| 381 | std::string inner_line; | ||
| 382 | std::vector<std::string> out; | ||
| 383 | while (std::getline(inner_ss, inner_line, '|')) { | ||
| 384 | out.push_back(inner_line); | ||
| 385 | } | ||
| 386 | |||
| 387 | Settings::values.disabled_addons.insert_or_assign(title_id, out); | ||
| 388 | } | ||
| 389 | |||
| 372 | // Web Service | 390 | // Web Service |
| 373 | Settings::values.enable_telemetry = | 391 | Settings::values.enable_telemetry = |
| 374 | sdl2_config->GetBoolean("WebService", "enable_telemetry", true); | 392 | sdl2_config->GetBoolean("WebService", "enable_telemetry", true); |