Просмотр исходного кода

time_manager: Don't offset RTC by system time zone

This causes the emulated system's universal time to be on the user's clock, and the user time to
be off if they set a time zone.

time_manager: Remove GetExternalRtcTime
lat9nq 3 лет назад
Родитель
Сommit
9e2164be74
1 измененных файлов с 1 добавлено и 5 удалено
  1. 1 5
      src/core/hle/service/time/time_manager.cpp

+ 1 - 5
src/core/hle/service/time/time_manager.cpp

@@ -22,10 +22,6 @@ s64 GetSecondsSinceEpoch() {
     return std::chrono::duration_cast<std::chrono::seconds>(time_since_epoch).count() +
            Settings::values.custom_rtc_differential;
 }
-
-s64 GetExternalRtcValue() {
-    return GetSecondsSinceEpoch() + TimeManager::GetExternalTimeZoneOffset();
-}
 } // Anonymous namespace
 
 struct TimeManager::Impl final {
@@ -43,7 +39,7 @@ struct TimeManager::Impl final {
               std::make_shared<Clock::EphemeralNetworkSystemClockContextWriter>()},
           time_zone_content_manager{system} {
 
-        const auto system_time{Clock::TimeSpanType::FromSeconds(GetExternalRtcValue())};
+        const auto system_time{Clock::TimeSpanType::FromSeconds(GetSecondsSinceEpoch())};
         SetupStandardSteadyClock(system, Common::UUID::MakeRandom(), system_time, {}, {});
         SetupStandardLocalSystemClock(system, {}, system_time.ToSeconds());