fix: Project files failing to save when no custom encoding is loaded
This commit is contained in:
parent
bec655a8c6
commit
5680b90549
@ -109,22 +109,26 @@ namespace hex {
|
||||
bool result = true;
|
||||
for (const auto &handler : ProjectFile::getHandlers()) {
|
||||
try {
|
||||
if (!handler.store(handler.basePath, tar))
|
||||
if (!handler.store(handler.basePath, tar) && handler.required)
|
||||
result = false;
|
||||
} catch (std::exception &e) {
|
||||
log::info("{}", e.what());
|
||||
result = false;
|
||||
|
||||
if (handler.required)
|
||||
result = false;
|
||||
}
|
||||
}
|
||||
for (const auto &provider : ImHexApi::Provider::getProviders()) {
|
||||
const auto basePath = std::fs::path(std::to_string(provider->getID()));
|
||||
for (const auto &handler: ProjectFile::getProviderHandlers()) {
|
||||
try {
|
||||
if (!handler.store(provider, basePath / handler.basePath, tar))
|
||||
if (!handler.store(provider, basePath / handler.basePath, tar) && handler.required)
|
||||
result = false;
|
||||
} catch (std::exception &e) {
|
||||
log::info("{}", e.what());
|
||||
result = false;
|
||||
|
||||
if (handler.required)
|
||||
result = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -900,10 +900,9 @@ namespace hex::plugin::builtin {
|
||||
.store = [this](prv::Provider *, const std::fs::path &basePath, Tar &tar) {
|
||||
if (const auto &encoding = this->m_hexEditor.getCustomEncoding(); encoding.has_value()) {
|
||||
tar.writeString(basePath, encoding->getTableContent());
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
@ -101,7 +101,7 @@ namespace hex::plugin::windows {
|
||||
}
|
||||
|
||||
auto totalMem = memInfo.ullTotalPhys;
|
||||
auto usedMem = pmc.PrivateUsage;
|
||||
auto usedMem = pmc.WorkingSetSize;
|
||||
|
||||
ImGui::TextFormatted(ICON_FA_MICROCHIP " {0} / {1}", hex::toByteString(usedMem), hex::toByteString(totalMem));
|
||||
});
|
||||
|
Loading…
Reference in New Issue
Block a user