mirror of
https://github.com/HamletDuFromage/aio-switch-updater.git
synced 2024-11-24 18:42:05 +00:00
fix pc color swap crash
This commit is contained in:
parent
a2f98dc05c
commit
8f6c4ad5ee
1 changed files with 22 additions and 21 deletions
|
@ -288,33 +288,34 @@ namespace PC {
|
|||
std::fstream profilesFile;
|
||||
nlohmann::ordered_json profilesJson;
|
||||
download::getRequest(PC_COLOR_URL, profilesJson);
|
||||
profilesJson += fs::parseJsonFile(path);
|
||||
if (profilesJson.empty()) {
|
||||
profilesJson = {{{"BTN", "e6e6e6"},
|
||||
{"BODY", "2d2d2d"},
|
||||
{"name", "Default black"}}};
|
||||
}
|
||||
for (const auto& x : profilesJson.items()) {
|
||||
std::string name = x.value()["name"];
|
||||
std::vector<std::string> values = {
|
||||
std::string(x.value()["BODY"]),
|
||||
std::string(x.value()["BTN"])};
|
||||
properData = true;
|
||||
for (auto& str : values) {
|
||||
if (!isHexaAnd3Bytes(str)) {
|
||||
properData = false;
|
||||
for (const auto& profiles : {fs::parseJsonFile(path), profilesJson}) {
|
||||
for (const auto& x : profiles.items()) {
|
||||
std::string name = x.value()["name"];
|
||||
std::vector<std::string> values = {
|
||||
std::string(x.value()["BODY"]),
|
||||
std::string(x.value()["BTN"])};
|
||||
properData = true;
|
||||
for (auto& str : values) {
|
||||
if (!isHexaAnd3Bytes(str)) {
|
||||
properData = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (properData) {
|
||||
if (name == "") name = "Unamed";
|
||||
auto profile = std::make_pair(name, (std::vector<int>){
|
||||
hexToBGR(values[0]),
|
||||
hexToBGR(values[1])});
|
||||
if (name == BACKUP) {
|
||||
res.push_front(profile);
|
||||
}
|
||||
else {
|
||||
res.push_back(profile);
|
||||
if (properData) {
|
||||
if (name == "") name = "Unamed";
|
||||
auto profile = std::make_pair(name, (std::vector<int>){
|
||||
hexToBGR(values[0]),
|
||||
hexToBGR(values[1])});
|
||||
if (name == BACKUP) {
|
||||
res.push_front(profile);
|
||||
}
|
||||
else {
|
||||
res.push_back(profile);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue