Skip to content

Commit c594af0

Browse files
committed
Add warning if loader data fails to load
1 parent 3e45bc2 commit c594af0

1 file changed

Lines changed: 24 additions & 10 deletions

File tree

src/GUI.cpp

Lines changed: 24 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -260,16 +260,30 @@ void GUI::LayerSet::GUIErrorsTab() {
260260
if (ImGui::BeginTabItem("Warnings")) {
261261
ImGui::BeginChild("##ScrollArea", {-FLT_MIN, -FLT_MIN});
262262

263-
const auto loaderDataPending = std::ranges::any_of(
264-
mStore->GetArchitectures().enumerate(), [](const auto arch) {
265-
const auto data = Platform::Get().GetLoaderData(arch);
266-
if (data) {
267-
return false;
268-
}
269-
return holds_alternative<LoaderData::PendingError>(data.error());
270-
});
271-
if (loaderDataPending) {
272-
ImGui::Text("⌛ Loading...");
263+
bool hadLoaderDataInfo = false;
264+
for (const auto arch: mStore->GetArchitectures().enumerate()) {
265+
const auto loaderData = Platform::Get().GetLoaderData(arch);
266+
if (loaderData) {
267+
continue;
268+
}
269+
270+
hadLoaderDataInfo = true;
271+
const auto archName = magic_enum::enum_name(arch);
272+
if (holds_alternative<LoaderData::PendingError>(loaderData.error())) {
273+
ImGui::Text(
274+
"%s",
275+
std::format("⌛ Fetching {} runtime data...", archName).c_str());
276+
continue;
277+
}
278+
279+
ImGui::Text(
280+
"%s",
281+
std::format(
282+
"⚠️Couldn't load {} runtime data, some checks are missing", archName)
283+
.c_str());
284+
}
285+
286+
if (hadLoaderDataInfo) {
273287
ImGui::Separator();
274288
}
275289

0 commit comments

Comments
 (0)