diff options
author | lat9nq <22451773+lat9nq@users.noreply.github.com> | 2023-05-10 17:57:25 -0400 |
---|---|---|
committer | lat9nq <22451773+lat9nq@users.noreply.github.com> | 2023-07-21 10:56:07 -0400 |
commit | 8e151460265f04c7bf4a981b5f97f252a0444c27 (patch) | |
tree | dc02219effed841c9a2c20b013db9390ed3981c6 /src/core/core.cpp | |
parent | 56960bf9f8ff6987fe265d98fe60852d9b7b05b4 (diff) |
configure_system: Implement with for loop
Diffstat (limited to 'src/core/core.cpp')
-rw-r--r-- | src/core/core.cpp | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/src/core/core.cpp b/src/core/core.cpp index da1baa8923..e2902a91ff 100644 --- a/src/core/core.cpp +++ b/src/core/core.cpp @@ -145,13 +145,7 @@ struct System::Impl { core_timing.SetMulticore(is_multicore); core_timing.Initialize([&system]() { system.RegisterHostThread(); }); - const auto posix_time = std::chrono::system_clock::now().time_since_epoch(); - const auto current_time = - std::chrono::duration_cast<std::chrono::seconds>(posix_time).count(); - Settings::values.custom_rtc_differential = - (Settings::values.custom_rtc_enabled ? Settings::values.custom_rtc.GetValue() - : current_time) - - current_time; + RefreshTime(); // Create a default fs if one doesn't already exist. if (virtual_filesystem == nullptr) { @@ -188,6 +182,16 @@ struct System::Impl { Initialize(system); } + void RefreshTime() { + const auto posix_time = std::chrono::system_clock::now().time_since_epoch(); + const auto current_time = + std::chrono::duration_cast<std::chrono::seconds>(posix_time).count(); + Settings::values.custom_rtc_differential = + (Settings::values.custom_rtc_enabled ? Settings::values.custom_rtc.GetValue() + : current_time) - + current_time; + } + void Run() { std::unique_lock<std::mutex> lk(suspend_guard); @@ -1022,6 +1026,8 @@ void System::Exit() { } void System::ApplySettings() { + impl->RefreshTime(); + if (IsPoweredOn()) { Renderer().RefreshBaseSettings(); } |