From 4519469547c0f8befe74e3e80a94efb0e076ba34 Mon Sep 17 00:00:00 2001 From: Tiger Wang Date: Tue, 22 Sep 2020 21:21:47 +0100 Subject: Do not call into things we don't own in destructors - Remove improper accesses in cChunk destructor * Fixes #4894 --- src/Entities/Entity.cpp | 15 --------------- src/Entities/Entity.h | 3 --- 2 files changed, 18 deletions(-) (limited to 'src/Entities') diff --git a/src/Entities/Entity.cpp b/src/Entities/Entity.cpp index 3674d16c1..34d5bf6e5 100644 --- a/src/Entities/Entity.cpp +++ b/src/Entities/Entity.cpp @@ -250,21 +250,6 @@ void cEntity::Destroy() -void cEntity::DestroyNoScheduling(bool a_ShouldBroadcast) -{ - SetIsTicking(false); - if (a_ShouldBroadcast) - { - m_World->BroadcastDestroyEntity(*this); - } - - Destroyed(); -} - - - - - void cEntity::TakeDamage(cEntity & a_Attacker) { int RawDamage = a_Attacker.GetRawDamageAgainst(*this); diff --git a/src/Entities/Entity.h b/src/Entities/Entity.h index 627c1ce71..4322665c3 100644 --- a/src/Entities/Entity.h +++ b/src/Entities/Entity.h @@ -341,9 +341,6 @@ public: initialize clients with our position. */ Vector3d GetLastSentPosition(void) const { return m_LastSentPosition; } - /** Destroy the entity without scheduling memory freeing. This should only be used by cChunk or cClientHandle for internal memory management. */ - void DestroyNoScheduling(bool a_ShouldBroadcast); - /** Makes this entity take damage specified in the a_TDI. The TDI is sent through plugins first, then applied. If it returns false, the entity hasn't receive any damage. */ -- cgit v1.2.3