diff options
author | Ovahlord <dreadkiller@gmx.de> | 2024-12-25 10:44:45 +0100 |
---|---|---|
committer | Ovahlord <dreadkiller@gmx.de> | 2024-12-25 10:45:47 +0100 |
commit | 3997b857c2df1ff52186568e6c151c43773744fc (patch) | |
tree | f3d6cd01c4382853c2d014d144d6f1b4e478bb36 /src/server/scripts/OutdoorPvP | |
parent | 69e0e65fd739c799c37cd03bb16df1a015fba83d (diff) |
Scripts/OutdoorPvp: converted two raw pointers into smart pointers to fix possible memory leaks
(cherry picked from commit 0b842d44d98c1d3fe3817e808a4eb07be9b6d6b0)
Diffstat (limited to 'src/server/scripts/OutdoorPvP')
-rw-r--r-- | src/server/scripts/OutdoorPvP/OutdoorPvPNA.cpp | 3 | ||||
-rw-r--r-- | src/server/scripts/OutdoorPvP/OutdoorPvPNA.h | 4 | ||||
-rw-r--r-- | src/server/scripts/OutdoorPvP/OutdoorPvPZM.cpp | 3 | ||||
-rw-r--r-- | src/server/scripts/OutdoorPvP/OutdoorPvPZM.h | 4 |
4 files changed, 6 insertions, 8 deletions
diff --git a/src/server/scripts/OutdoorPvP/OutdoorPvPNA.cpp b/src/server/scripts/OutdoorPvP/OutdoorPvPNA.cpp index b3295dc4e28..98c09080b7d 100644 --- a/src/server/scripts/OutdoorPvP/OutdoorPvPNA.cpp +++ b/src/server/scripts/OutdoorPvP/OutdoorPvPNA.cpp @@ -39,7 +39,6 @@ uint32 const FlightPathEndNodes[FLIGHT_NODES_NUM] = { 104, 106, 108, 110 }; OutdoorPvPNA::OutdoorPvPNA(Map* map) : OutdoorPvP(map) { m_TypeId = OUTDOOR_PVP_NA; - m_obj = nullptr; ControlZoneHandlers[182210] = std::make_unique<NAControlZoneHandler>(this); } @@ -220,7 +219,7 @@ bool OutdoorPvPNA::SetupOutdoorPvP() RegisterZone(NA_BUFF_ZONE); // halaa - m_obj = new OPvPCapturePointNA(this); + m_obj = std::make_unique<OPvPCapturePointNA>(this); return true; } diff --git a/src/server/scripts/OutdoorPvP/OutdoorPvPNA.h b/src/server/scripts/OutdoorPvP/OutdoorPvPNA.h index 9be2cb3fdba..75ded13680a 100644 --- a/src/server/scripts/OutdoorPvP/OutdoorPvPNA.h +++ b/src/server/scripts/OutdoorPvP/OutdoorPvPNA.h @@ -190,9 +190,9 @@ class OutdoorPvPNA : public OutdoorPvP void SendRemoveWorldStates(Player* player) override; void HandleKillImpl(Player* player, Unit* killed) override; void SendMapWorldStates(int32 neutral, int32 progressHorde, int32 progressAlliance, int32 capturedHorde, int32 captureAlliance); - OPvPCapturePointNA* GetCapturePoint() const { return m_obj; } + OPvPCapturePointNA* GetCapturePoint() const { return m_obj.get(); } private: - OPvPCapturePointNA* m_obj; + std::unique_ptr<OPvPCapturePointNA> m_obj; }; #endif diff --git a/src/server/scripts/OutdoorPvP/OutdoorPvPZM.cpp b/src/server/scripts/OutdoorPvP/OutdoorPvPZM.cpp index d6ec4f94d4e..48b8f159cfb 100644 --- a/src/server/scripts/OutdoorPvP/OutdoorPvPZM.cpp +++ b/src/server/scripts/OutdoorPvP/OutdoorPvPZM.cpp @@ -140,7 +140,6 @@ void OutdoorPvPZM::HandlePlayerLeaveZone(Player* player, uint32 zone) OutdoorPvPZM::OutdoorPvPZM(Map* map) : OutdoorPvP(map) { m_TypeId = OUTDOOR_PVP_ZM; - m_Graveyard = nullptr; m_AllianceTowersControlled = 0; m_HordeTowersControlled = 0; @@ -178,7 +177,7 @@ bool OutdoorPvPZM::SetupOutdoorPvP() for (uint8 i = 0; i < OutdoorPvPZMBuffZonesNum; ++i) RegisterZone(OutdoorPvPZMBuffZones[i]); - m_Graveyard = new OPvPCapturePointZM_Graveyard(this); + m_Graveyard = std::make_unique<OPvPCapturePointZM_Graveyard>(this); return true; } diff --git a/src/server/scripts/OutdoorPvP/OutdoorPvPZM.h b/src/server/scripts/OutdoorPvP/OutdoorPvPZM.h index d29f3d63369..2a6feb422b1 100644 --- a/src/server/scripts/OutdoorPvP/OutdoorPvPZM.h +++ b/src/server/scripts/OutdoorPvP/OutdoorPvPZM.h @@ -193,10 +193,10 @@ class OutdoorPvPZM : public OutdoorPvP uint32 GetHordeTowersControlled() const; void SetHordeTowersControlled(uint32 count); - OPvPCapturePointZM_Graveyard* GetGraveyard() { return m_Graveyard; } + OPvPCapturePointZM_Graveyard* GetGraveyard() { return m_Graveyard.get(); } private: - OPvPCapturePointZM_Graveyard* m_Graveyard; + std::unique_ptr<OPvPCapturePointZM_Graveyard> m_Graveyard; uint32 m_AllianceTowersControlled; uint32 m_HordeTowersControlled; }; |