aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Globals/ObjectMgr.cpp
diff options
context:
space:
mode:
authorNay <dnpd.dd@gmail.com>2013-09-11 11:50:18 -0700
committerNay <dnpd.dd@gmail.com>2013-09-11 11:50:18 -0700
commitbaa159dbd4472a3cff2e4256fec60431878ae1f8 (patch)
tree81dba5007ef41f0506db6096d277d5ddf96146ff /src/server/game/Globals/ObjectMgr.cpp
parent77f90c1c67864305d532233266a4951f48f61683 (diff)
parent9578b5f87a4aa96e120b78f410ea90e141903dd7 (diff)
Merge pull request #10736 from jackpoz/localtime_race_condition
Core/Thread: Fix race condition converting time values to local time
Diffstat (limited to 'src/server/game/Globals/ObjectMgr.cpp')
-rw-r--r--src/server/game/Globals/ObjectMgr.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/server/game/Globals/ObjectMgr.cpp b/src/server/game/Globals/ObjectMgr.cpp
index 7f1d231ebd9..2f309c07cce 100644
--- a/src/server/game/Globals/ObjectMgr.cpp
+++ b/src/server/game/Globals/ObjectMgr.cpp
@@ -5236,9 +5236,10 @@ void ObjectMgr::ReturnOrDeleteOldMails(bool serverUp)
uint32 oldMSTime = getMSTime();
time_t curTime = time(NULL);
- tm* lt = localtime(&curTime);
+ tm lt;
+ ACE_OS::localtime_r(&curTime, &lt);
uint64 basetime(curTime);
- TC_LOG_INFO(LOG_FILTER_GENERAL, "Returning mails current time: hour: %d, minute: %d, second: %d ", lt->tm_hour, lt->tm_min, lt->tm_sec);
+ TC_LOG_INFO(LOG_FILTER_GENERAL, "Returning mails current time: hour: %d, minute: %d, second: %d ", lt.tm_hour, lt.tm_min, lt.tm_sec);
// Delete all old mails without item and without body immediately, if starting server
if (!serverUp)