summaryrefslogtreecommitdiffstats
path: root/src/frontend/mame/ui/devopt.cpp
diff options
context:
space:
mode:
author Robbbert <Robbbert@users.noreply.github.com>2021-12-10 01:26:42 +1100
committer Robbbert <Robbbert@users.noreply.github.com>2021-12-10 01:26:42 +1100
commit9b44fb29cc8d9809b17e9dd0009576574b25145a (patch)
treead07c00e4e2bcf4bf51102bd1949d69a747ceae6 /src/frontend/mame/ui/devopt.cpp
parent6092dcbb5e0f7356f4e2bb634c62dc7adabf66d3 (diff)
parenta35ca34d96d13c9cc45d0b2456f3e09baa524bb8 (diff)
Merge remote-tracking branch 'upstream/master'
Diffstat (limited to 'src/frontend/mame/ui/devopt.cpp')
-rw-r--r--src/frontend/mame/ui/devopt.cpp17
1 files changed, 10 insertions, 7 deletions
diff --git a/src/frontend/mame/ui/devopt.cpp b/src/frontend/mame/ui/devopt.cpp
index cfb277127fd..c9a2c7f4360 100644
--- a/src/frontend/mame/ui/devopt.cpp
+++ b/src/frontend/mame/ui/devopt.cpp
@@ -120,13 +120,16 @@ void menu_device_config::populate_text(std::optional<text_layout> &layout, float
}
else
{
- std::string hz(std::to_string(u32(screen.frame_period().as_hz() * 1'000'000 + 0.5)));
- size_t dpos = hz.length() - 6;
- if (dpos == 0)
- hz.insert(dpos++, "0");
- hz.insert(dpos, ".");
- size_t last = hz.find_last_not_of('0');
- hz = hz.substr(0, last + (last != dpos ? 1 : 0));
+ const u32 rate = u32(screen.frame_period().as_hz() * 1'000'000 + 0.5);
+ const bool valid = rate >= 1'000'000;
+ std::string hz(valid ? std::to_string(rate) : "?");
+ if (valid)
+ {
+ size_t dpos = hz.length() - 6;
+ hz.insert(dpos, ".");
+ size_t last = hz.find_last_not_of('0');
+ hz = hz.substr(0, last + (last != dpos ? 1 : 0));
+ }
const rectangle &visarea = screen.visible_area();
layout->add_text(