diff options
Diffstat (limited to 'src/server/game/Globals/ObjectMgr.cpp')
-rw-r--r-- | src/server/game/Globals/ObjectMgr.cpp | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/src/server/game/Globals/ObjectMgr.cpp b/src/server/game/Globals/ObjectMgr.cpp index cfecba63541..c56bc2dbebc 100644 --- a/src/server/game/Globals/ObjectMgr.cpp +++ b/src/server/game/Globals/ObjectMgr.cpp @@ -6045,18 +6045,17 @@ void ObjectMgr::ReturnOrDeleteOldMails(bool serverUp) time_t curTime = time(nullptr); tm lt; localtime_r(&curTime, <); - uint64 basetime(curTime); TC_LOG_INFO("misc", "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) { CharacterDatabasePreparedStatement* stmt = CharacterDatabase.GetPreparedStatement(CHAR_DEL_EMPTY_EXPIRED_MAIL); - stmt->setUInt64(0, basetime); + stmt->setInt64(0, curTime); CharacterDatabase.Execute(stmt); } CharacterDatabasePreparedStatement* stmt = CharacterDatabase.GetPreparedStatement(CHAR_SEL_EXPIRED_MAIL); - stmt->setUInt64(0, basetime); + stmt->setInt64(0, curTime); PreparedQueryResult result = CharacterDatabase.Query(stmt); if (!result) { @@ -6066,7 +6065,7 @@ void ObjectMgr::ReturnOrDeleteOldMails(bool serverUp) std::map<uint32 /*messageId*/, MailItemInfoVec> itemsCache; stmt = CharacterDatabase.GetPreparedStatement(CHAR_SEL_EXPIRED_MAIL_ITEMS); - stmt->setUInt32(0, (uint32)basetime); + stmt->setUInt32(0, curTime); if (PreparedQueryResult items = CharacterDatabase.Query(stmt)) { MailItemInfo item; @@ -6091,7 +6090,7 @@ void ObjectMgr::ReturnOrDeleteOldMails(bool serverUp) m->sender = fields[2].GetUInt64(); m->receiver = fields[3].GetUInt64(); bool has_items = fields[4].GetBool(); - m->expire_time = time_t(fields[5].GetUInt32()); + m->expire_time = fields[5].GetInt64(); m->deliver_time = 0; m->COD = fields[6].GetUInt64(); m->checked = fields[7].GetUInt8(); @@ -6136,8 +6135,8 @@ void ObjectMgr::ReturnOrDeleteOldMails(bool serverUp) stmt = CharacterDatabase.GetPreparedStatement(CHAR_UPD_MAIL_RETURNED); stmt->setUInt64(0, m->receiver); stmt->setUInt64(1, m->sender); - stmt->setUInt32(2, basetime + 30 * DAY); - stmt->setUInt32(3, basetime); + stmt->setInt64 (2, curTime + 30 * DAY); + stmt->setInt64 (3, curTime); stmt->setUInt8 (4, uint8(MAIL_CHECK_MASK_RETURNED)); stmt->setUInt32(5, m->messageID); CharacterDatabase.Execute(stmt); |