diff options
-rw-r--r-- | src/server/game/Instances/InstanceLockMgr.cpp | 4 | ||||
-rw-r--r-- | src/server/game/Instances/InstanceLockMgr.h | 8 |
2 files changed, 4 insertions, 8 deletions
diff --git a/src/server/game/Instances/InstanceLockMgr.cpp b/src/server/game/Instances/InstanceLockMgr.cpp index d0353ad00b0..7ce1dcdbbaf 100644 --- a/src/server/game/Instances/InstanceLockMgr.cpp +++ b/src/server/game/Instances/InstanceLockMgr.cpp @@ -397,8 +397,10 @@ void InstanceLockMgr::UpdateSharedInstanceLock(CharacterDatabaseTransaction tran auto sharedDataItr = _instanceLockDataById.find(updateEvent.InstanceId); ASSERT(sharedDataItr != _instanceLockDataById.end()); std::shared_ptr<SharedInstanceLockData> sharedData = sharedDataItr->second.lock(); - ASSERT(sharedData && sharedData->InstanceId == updateEvent.InstanceId); + ASSERT(sharedData); + ASSERT(!sharedData->InstanceId || sharedData->InstanceId == updateEvent.InstanceId); sharedData->Data = std::move(updateEvent.NewData); + sharedData->InstanceId = updateEvent.InstanceId; if (updateEvent.CompletedEncounter) { sharedData->CompletedEncountersMask |= 1u << updateEvent.CompletedEncounter->Bit; diff --git a/src/server/game/Instances/InstanceLockMgr.h b/src/server/game/Instances/InstanceLockMgr.h index b860335b48f..84edcd90621 100644 --- a/src/server/game/Instances/InstanceLockMgr.h +++ b/src/server/game/Instances/InstanceLockMgr.h @@ -96,7 +96,7 @@ public: Difficulty GetDifficultyId() const { return _difficultyId; } uint32 GetInstanceId() const { return _instanceId; } - virtual void SetInstanceId(uint32 instanceId) { _instanceId = instanceId; } + void SetInstanceId(uint32 instanceId) { _instanceId = instanceId; } InstanceResetTimePoint GetExpiryTime() const { return _expiryTime; } void SetExpiryTime(InstanceResetTimePoint expiryTime) { _expiryTime = expiryTime; } @@ -143,12 +143,6 @@ class TC_GAME_API SharedInstanceLock : public InstanceLock public: SharedInstanceLock(uint32 mapId, Difficulty difficultyId, InstanceResetTimePoint expiryTime, uint32 instanceId, std::shared_ptr<SharedInstanceLockData> sharedData); - void SetInstanceId(uint32 instanceId) override - { - InstanceLock::SetInstanceId(instanceId); - _sharedData->InstanceId = instanceId; - } - InstanceLockData const* GetInstanceInitializationData() const override { return _sharedData.get(); } SharedInstanceLockData* GetSharedData() { return _sharedData.get(); } |