diff options
author | Shauren <shauren.trinity@gmail.com> | 2025-09-08 14:33:21 +0200 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2025-09-08 14:33:21 +0200 |
commit | 77795c9ff302ccff719a156bc63085562f73bcd8 (patch) | |
tree | db65e8258160e2a6dd74c48f087ae48eeff1c3e9 | |
parent | 3b8f64831a766b469dfb8f8506e09dffdcfe723c (diff) |
Core/Time: Initialize all GameTime fields at server startup
-rw-r--r-- | src/server/game/Time/GameTime.cpp | 23 |
1 files changed, 16 insertions, 7 deletions
diff --git a/src/server/game/Time/GameTime.cpp b/src/server/game/Time/GameTime.cpp index 2a2797b97e0..b6d4e2f9986 100644 --- a/src/server/game/Time/GameTime.cpp +++ b/src/server/game/Time/GameTime.cpp @@ -18,24 +18,32 @@ #include "GameTime.h" #include "Timer.h" #include "Timezone.h" +#include "Types.h" #include "Util.h" #include "WowTime.h" namespace GameTime { - time_t const StartTime = time(nullptr); - - time_t GameTime = time(nullptr); - uint32 GameMSTime = 0; +namespace +{ + time_t GameTime; + uint32 GameMSTime; - SystemTimePoint GameTimeSystemPoint = SystemTimePoint::min(); - TimePoint GameTimeSteadyPoint = TimePoint::min(); + SystemTimePoint GameTimeSystemPoint; + TimePoint GameTimeSteadyPoint; tm DateTime; WowTime UtcWow; WowTime Wow; + time_t const StartTime = [] + { + UpdateGameTimers(); + return time(nullptr); + }(); +} + time_t GetStartTime() { return StartTime; @@ -64,7 +72,8 @@ namespace GameTime template<typename Clock> typename Clock::time_point GetTime() { - static_assert(!std::is_same<Clock, Clock>::value, "Missing specialization for GetGameTimePoint"); + static_assert(Trinity::dependant_false_v<Clock>, "Missing specialization for GetGameTimePoint"); + return { }; } template<> |