mirror of
https://github.com/wpilibsuite/allwpilib
synced 2026-06-21 01:01:43 +00:00
[wpiutil] Upgrade to fmt 10.2.1, add wpi::print (#6161)
We now use a wrapper (wpi::print) to catch exceptions since we can't patch std::print() to not throw when we ultimately migrate to it. fmtlib and std format/print throw the same exceptions and always have. We previously patched fmt::print() to not throw a write failure exception, but we can't do that for std::print(); wpi::print() is the migration plan.
This commit is contained in:
@@ -8,6 +8,7 @@
|
||||
#include <cstdio>
|
||||
|
||||
#include <fmt/format.h>
|
||||
#include <wpi/print.h>
|
||||
#include <wpigui.h>
|
||||
|
||||
#include "glass/Context.h"
|
||||
@@ -31,7 +32,7 @@ Window* WindowManager::AddWindow(std::string_view id,
|
||||
return nullptr;
|
||||
}
|
||||
if (win->HasView()) {
|
||||
fmt::print(stderr, "GUI: ignoring duplicate window '{}'\n", id);
|
||||
wpi::print(stderr, "GUI: ignoring duplicate window '{}'\n", id);
|
||||
return nullptr;
|
||||
}
|
||||
win->SetView(MakeFunctionView(std::move(display)));
|
||||
@@ -46,7 +47,7 @@ Window* WindowManager::AddWindow(std::string_view id,
|
||||
return nullptr;
|
||||
}
|
||||
if (win->HasView()) {
|
||||
fmt::print(stderr, "GUI: ignoring duplicate window '{}'\n", id);
|
||||
wpi::print(stderr, "GUI: ignoring duplicate window '{}'\n", id);
|
||||
return nullptr;
|
||||
}
|
||||
win->SetView(std::move(view));
|
||||
@@ -61,7 +62,7 @@ Window* WindowManager::GetOrAddWindow(std::string_view id, bool duplicateOk,
|
||||
[](const auto& elem, std::string_view s) { return elem->GetId() < s; });
|
||||
if (it != m_windows.end() && (*it)->GetId() == id) {
|
||||
if (!duplicateOk) {
|
||||
fmt::print(stderr, "GUI: ignoring duplicate window '{}'\n", id);
|
||||
wpi::print(stderr, "GUI: ignoring duplicate window '{}'\n", id);
|
||||
return nullptr;
|
||||
}
|
||||
return it->get();
|
||||
|
||||
Reference in New Issue
Block a user