diff options
author | Vincent-Michael <Vincent_Michael@gmx.de> | 2014-07-20 03:06:03 +0200 |
---|---|---|
committer | Vincent-Michael <Vincent_Michael@gmx.de> | 2014-07-20 03:06:03 +0200 |
commit | e68d3b0937e205c94c17d7cb1a53194b6d169fe8 (patch) | |
tree | 326d69976375006fe244df6e858bd20e83fcae90 /src/server/game | |
parent | abe8dd7abf70b3589ad0cbba19f91bd4f743bf3e (diff) | |
parent | 0531f52008cfc4ecb28c0b3cd67504e06452ab75 (diff) |
Merge branch 'master' of github.com:TrinityCore/TrinityCore into 4.3.4
Conflicts:
src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_elder_nadox.cpp
src/server/scripts/Northrend/zone_dalaran.cpp
src/server/shared/Cryptography/Authentication/WorldPacketCrypt.cpp
Diffstat (limited to 'src/server/game')
37 files changed, 84 insertions, 71 deletions
diff --git a/src/server/game/AI/SmartScripts/SmartScriptMgr.h b/src/server/game/AI/SmartScripts/SmartScriptMgr.h index f3106ed726b..f09e16268c1 100644 --- a/src/server/game/AI/SmartScripts/SmartScriptMgr.h +++ b/src/server/game/AI/SmartScripts/SmartScriptMgr.h @@ -1411,8 +1411,8 @@ class SmartWaypointMgr public: static SmartWaypointMgr* instance() { - static SmartWaypointMgr* instance = new SmartWaypointMgr(); - return instance; + static SmartWaypointMgr instance; + return &instance; } void LoadFromDB(); @@ -1447,8 +1447,8 @@ class SmartAIMgr public: static SmartAIMgr* instance() { - static SmartAIMgr* instance = new SmartAIMgr(); - return instance; + static SmartAIMgr instance; + return &instance; } void LoadSmartAIFromDB(); diff --git a/src/server/game/Accounts/AccountMgr.h b/src/server/game/Accounts/AccountMgr.h index 47801f3ce19..add00ec7feb 100644 --- a/src/server/game/Accounts/AccountMgr.h +++ b/src/server/game/Accounts/AccountMgr.h @@ -58,8 +58,8 @@ class AccountMgr public: static AccountMgr* instance() { - static AccountMgr* instance = new AccountMgr(); - return instance; + static AccountMgr instance; + return &instance; } AccountOpResult CreateAccount(std::string username, std::string password, std::string email = ""); diff --git a/src/server/game/Achievements/AchievementMgr.h b/src/server/game/Achievements/AchievementMgr.h index 66c91ef728e..efa3e3ce5fa 100644 --- a/src/server/game/Achievements/AchievementMgr.h +++ b/src/server/game/Achievements/AchievementMgr.h @@ -307,8 +307,8 @@ class AchievementGlobalMgr static AchievementGlobalMgr* instance() { - static AchievementGlobalMgr* instance = new AchievementGlobalMgr(); - return instance; + static AchievementGlobalMgr instance; + return &instance; } AchievementCriteriaEntryList const& GetAchievementCriteriaByType(AchievementCriteriaTypes type, bool guild = false) const diff --git a/src/server/game/AuctionHouse/AuctionHouseMgr.h b/src/server/game/AuctionHouse/AuctionHouseMgr.h index 3222d3bfa3c..8e74b4c53a6 100644 --- a/src/server/game/AuctionHouse/AuctionHouseMgr.h +++ b/src/server/game/AuctionHouse/AuctionHouseMgr.h @@ -142,8 +142,8 @@ class AuctionHouseMgr public: static AuctionHouseMgr* instance() { - static AuctionHouseMgr* instance = new AuctionHouseMgr(); - return instance; + static AuctionHouseMgr instance; + return &instance; } typedef std::unordered_map<uint32, Item*> ItemMap; diff --git a/src/server/game/Battlefield/BattlefieldMgr.h b/src/server/game/Battlefield/BattlefieldMgr.h index a3aad126479..ca057367e5a 100644 --- a/src/server/game/Battlefield/BattlefieldMgr.h +++ b/src/server/game/Battlefield/BattlefieldMgr.h @@ -29,8 +29,8 @@ class BattlefieldMgr public: static BattlefieldMgr* instance() { - static BattlefieldMgr* instance = new BattlefieldMgr(); - return instance; + static BattlefieldMgr instance; + return &instance; } // create battlefield events diff --git a/src/server/game/Battlegrounds/ArenaTeamMgr.h b/src/server/game/Battlegrounds/ArenaTeamMgr.h index 17b9120c7f6..eaf39278c28 100644 --- a/src/server/game/Battlegrounds/ArenaTeamMgr.h +++ b/src/server/game/Battlegrounds/ArenaTeamMgr.h @@ -29,8 +29,8 @@ private: public: static ArenaTeamMgr* instance() { - static ArenaTeamMgr* instance = new ArenaTeamMgr(); - return instance; + static ArenaTeamMgr instance; + return &instance; } typedef std::unordered_map<uint32, ArenaTeam*> ArenaTeamContainer; diff --git a/src/server/game/Battlegrounds/BattlegroundMgr.h b/src/server/game/Battlegrounds/BattlegroundMgr.h index ee7fd660851..e6f8eee354e 100644 --- a/src/server/game/Battlegrounds/BattlegroundMgr.h +++ b/src/server/game/Battlegrounds/BattlegroundMgr.h @@ -63,8 +63,8 @@ class BattlegroundMgr public: static BattlegroundMgr* instance() { - static BattlegroundMgr* instance = new BattlegroundMgr(); - return instance; + static BattlegroundMgr instance; + return &instance; } void Update(uint32 diff); diff --git a/src/server/game/Calendar/CalendarMgr.h b/src/server/game/Calendar/CalendarMgr.h index 8d744988a76..3dadcbdf645 100644 --- a/src/server/game/Calendar/CalendarMgr.h +++ b/src/server/game/Calendar/CalendarMgr.h @@ -283,8 +283,8 @@ class CalendarMgr public: static CalendarMgr* instance() { - static CalendarMgr* instance = new CalendarMgr(); - return instance; + static CalendarMgr instance; + return &instance; } void LoadFromDB(); diff --git a/src/server/game/Chat/Channels/ChannelMgr.h b/src/server/game/Chat/Channels/ChannelMgr.h index 0fd5cdbfe24..f3ca9694176 100644 --- a/src/server/game/Chat/Channels/ChannelMgr.h +++ b/src/server/game/Chat/Channels/ChannelMgr.h @@ -37,8 +37,8 @@ class ChannelMgr public: static ChannelMgr* instance() { - static ChannelMgr* instance = new ChannelMgr(); - return instance; + static ChannelMgr instance; + return &instance; } static ChannelMgr * forTeam(uint32 team); diff --git a/src/server/game/Chat/ChatLink.h b/src/server/game/Chat/ChatLink.h index e9573a631e4..ebe2583dc1c 100644 --- a/src/server/game/Chat/ChatLink.h +++ b/src/server/game/Chat/ChatLink.h @@ -21,6 +21,7 @@ #include "SharedDefines.h" #include <sstream> #include <list> +#include <cstring> struct ItemLocale; struct ItemTemplate; diff --git a/src/server/game/Conditions/ConditionMgr.h b/src/server/game/Conditions/ConditionMgr.h index f4130a3a619..9a48985b90d 100644 --- a/src/server/game/Conditions/ConditionMgr.h +++ b/src/server/game/Conditions/ConditionMgr.h @@ -231,8 +231,8 @@ class ConditionMgr static ConditionMgr* instance() { - static ConditionMgr* instance = new ConditionMgr(); - return instance; + static ConditionMgr instance; + return &instance; } void LoadConditions(bool isReload = false); diff --git a/src/server/game/DungeonFinding/LFGMgr.h b/src/server/game/DungeonFinding/LFGMgr.h index c42777c494c..b04b4f1a7ab 100644 --- a/src/server/game/DungeonFinding/LFGMgr.h +++ b/src/server/game/DungeonFinding/LFGMgr.h @@ -304,8 +304,8 @@ class LFGMgr public: static LFGMgr* instance() { - static LFGMgr* instance = new LFGMgr(); - return instance; + static LFGMgr instance; + return &instance; } // Functions used outside lfg namespace diff --git a/src/server/game/Entities/Creature/CreatureGroups.h b/src/server/game/Entities/Creature/CreatureGroups.h index 29832e4ff76..f53de0d48f1 100644 --- a/src/server/game/Entities/Creature/CreatureGroups.h +++ b/src/server/game/Entities/Creature/CreatureGroups.h @@ -47,8 +47,8 @@ class FormationMgr public: static FormationMgr* instance() { - static FormationMgr* instance = new FormationMgr(); - return instance; + static FormationMgr instance; + return &instance; } void AddCreatureToGroup(uint32 group_id, Creature* creature); diff --git a/src/server/game/Entities/Player/SocialMgr.h b/src/server/game/Entities/Player/SocialMgr.h index 68c25fbf648..3ed41a847ef 100644 --- a/src/server/game/Entities/Player/SocialMgr.h +++ b/src/server/game/Entities/Player/SocialMgr.h @@ -129,8 +129,8 @@ class SocialMgr public: static SocialMgr* instance() { - static SocialMgr* instance = new SocialMgr(); - return instance; + static SocialMgr instance; + return &instance; } // Misc diff --git a/src/server/game/Events/GameEventMgr.h b/src/server/game/Events/GameEventMgr.h index 99b94357a63..5afa26ec746 100644 --- a/src/server/game/Events/GameEventMgr.h +++ b/src/server/game/Events/GameEventMgr.h @@ -102,8 +102,8 @@ class GameEventMgr public: static GameEventMgr* instance() { - static GameEventMgr* instance = new GameEventMgr(); - return instance; + static GameEventMgr instance; + return &instance; } typedef std::set<uint16> ActiveEvents; diff --git a/src/server/game/Globals/ObjectAccessor.h b/src/server/game/Globals/ObjectAccessor.h index dff783f4276..d2331f14690 100644 --- a/src/server/game/Globals/ObjectAccessor.h +++ b/src/server/game/Globals/ObjectAccessor.h @@ -94,8 +94,8 @@ class ObjectAccessor static ObjectAccessor* instance() { - static ObjectAccessor *instance = new ObjectAccessor(); - return instance; + static ObjectAccessor instance; + return &instance; } template<class T> static T* GetObjectInOrOutOfWorld(uint64 guid, T* /*typeSpecifier*/) diff --git a/src/server/game/Globals/ObjectMgr.h b/src/server/game/Globals/ObjectMgr.h index 46561fd7773..45671f016c8 100644 --- a/src/server/game/Globals/ObjectMgr.h +++ b/src/server/game/Globals/ObjectMgr.h @@ -730,8 +730,8 @@ class ObjectMgr public: static ObjectMgr* instance() { - static ObjectMgr* instance = new ObjectMgr(); - return instance; + static ObjectMgr instance; + return &instance; } typedef std::unordered_map<uint32, Item*> ItemMap; diff --git a/src/server/game/Groups/GroupMgr.h b/src/server/game/Groups/GroupMgr.h index 4bf440c881e..556df1bc351 100644 --- a/src/server/game/Groups/GroupMgr.h +++ b/src/server/game/Groups/GroupMgr.h @@ -29,8 +29,8 @@ private: public: static GroupMgr* instance() { - static GroupMgr* instance = new GroupMgr(); - return instance; + static GroupMgr instance; + return &instance; } typedef std::map<uint32, Group*> GroupContainer; diff --git a/src/server/game/Guilds/GuildMgr.h b/src/server/game/Guilds/GuildMgr.h index 318445fe844..5df59f7e8ea 100644 --- a/src/server/game/Guilds/GuildMgr.h +++ b/src/server/game/Guilds/GuildMgr.h @@ -29,8 +29,8 @@ private: public: static GuildMgr* instance() { - static GuildMgr* instance = new GuildMgr(); - return instance; + static GuildMgr instance; + return &instance; } Guild* GetGuildByLeader(uint64 guid) const; diff --git a/src/server/game/Handlers/AddonHandler.h b/src/server/game/Handlers/AddonHandler.h index 31bbfa01900..c60f2942efd 100644 --- a/src/server/game/Handlers/AddonHandler.h +++ b/src/server/game/Handlers/AddonHandler.h @@ -28,8 +28,8 @@ class AddonHandler public: static AddonHandler* instance() { - static AddonHandler* instance = new AddonHandler(); - return instance; + static AddonHandler instance; + return &instance; } bool BuildAddonPacket(WorldPacket* Source, WorldPacket* Target); diff --git a/src/server/game/Instances/InstanceSaveMgr.h b/src/server/game/Instances/InstanceSaveMgr.h index de8a0e0fc8e..75dd8ef3f74 100644 --- a/src/server/game/Instances/InstanceSaveMgr.h +++ b/src/server/game/Instances/InstanceSaveMgr.h @@ -160,8 +160,8 @@ class InstanceSaveManager static InstanceSaveManager* instance() { - static InstanceSaveManager *instance = new InstanceSaveManager(); - return instance; + static InstanceSaveManager instance; + return &instance; } /* resetTime is a global propery of each (raid/heroic) map diff --git a/src/server/game/Maps/MapManager.h b/src/server/game/Maps/MapManager.h index 990d5e80c1a..e028833d72d 100644 --- a/src/server/game/Maps/MapManager.h +++ b/src/server/game/Maps/MapManager.h @@ -32,8 +32,8 @@ class MapManager public: static MapManager* instance() { - static MapManager* instance = new MapManager(); - return instance; + static MapManager instance; + return &instance; } Map* CreateBaseMap(uint32 mapId); diff --git a/src/server/game/Maps/TransportMgr.h b/src/server/game/Maps/TransportMgr.h index e023c8be4ee..94a4ba335b1 100644 --- a/src/server/game/Maps/TransportMgr.h +++ b/src/server/game/Maps/TransportMgr.h @@ -100,8 +100,8 @@ class TransportMgr public: static TransportMgr* instance() { - static TransportMgr* instance = new TransportMgr(); - return instance; + static TransportMgr instance; + return &instance; } void Unload(); diff --git a/src/server/game/Movement/Waypoints/WaypointManager.h b/src/server/game/Movement/Waypoints/WaypointManager.h index b12396293aa..385f4809729 100644 --- a/src/server/game/Movement/Waypoints/WaypointManager.h +++ b/src/server/game/Movement/Waypoints/WaypointManager.h @@ -39,8 +39,8 @@ class WaypointMgr public: static WaypointMgr* instance() { - static WaypointMgr* instance = new WaypointMgr(); - return instance; + static WaypointMgr instance; + return &instance; } // Attempts to reload a single path from database diff --git a/src/server/game/OutdoorPvP/OutdoorPvPMgr.h b/src/server/game/OutdoorPvP/OutdoorPvPMgr.h index ab1908e273d..1a9db2b682e 100644 --- a/src/server/game/OutdoorPvP/OutdoorPvPMgr.h +++ b/src/server/game/OutdoorPvP/OutdoorPvPMgr.h @@ -44,8 +44,8 @@ class OutdoorPvPMgr public: static OutdoorPvPMgr* instance() { - static OutdoorPvPMgr* instance = new OutdoorPvPMgr(); - return instance; + static OutdoorPvPMgr instance; + return &instance; } // create outdoor pvp events diff --git a/src/server/game/Pools/PoolMgr.h b/src/server/game/Pools/PoolMgr.h index 0a3f52b55f6..d1fcadd40de 100644 --- a/src/server/game/Pools/PoolMgr.h +++ b/src/server/game/Pools/PoolMgr.h @@ -110,8 +110,8 @@ class PoolMgr public: static PoolMgr* instance() { - static PoolMgr* instance = new PoolMgr(); - return instance; + static PoolMgr instance; + return &instance; } void LoadFromDB(); diff --git a/src/server/game/Scripting/ScriptMgr.h b/src/server/game/Scripting/ScriptMgr.h index fc06dca6355..bc58519fde4 100644 --- a/src/server/game/Scripting/ScriptMgr.h +++ b/src/server/game/Scripting/ScriptMgr.h @@ -880,8 +880,8 @@ class ScriptMgr public: /* Initialization */ static ScriptMgr* instance() { - static ScriptMgr* instance = new ScriptMgr(); - return instance; + static ScriptMgr instance; + return &instance; } void Initialize(); diff --git a/src/server/game/Scripting/ScriptSystem.h b/src/server/game/Scripting/ScriptSystem.h index 636343838c1..74c51e5b136 100644 --- a/src/server/game/Scripting/ScriptSystem.h +++ b/src/server/game/Scripting/ScriptSystem.h @@ -54,8 +54,8 @@ class SystemMgr public: static SystemMgr* instance() { - static SystemMgr* instance = new SystemMgr(); - return instance; + static SystemMgr instance; + return &instance; } typedef std::unordered_map<uint32, ScriptPointVector> PointMoveMap; diff --git a/src/server/game/Server/Protocol/PacketLog.cpp b/src/server/game/Server/Protocol/PacketLog.cpp index 6ef33133615..23dfb3538bc 100644 --- a/src/server/game/Server/Protocol/PacketLog.cpp +++ b/src/server/game/Server/Protocol/PacketLog.cpp @@ -18,6 +18,7 @@ #include "PacketLog.h" #include "Config.h" #include "WorldPacket.h" +#include "Timer.h" #pragma pack(push, 1) diff --git a/src/server/game/Server/Protocol/PacketLog.h b/src/server/game/Server/Protocol/PacketLog.h index 71d87bf45ae..4f298fa3c50 100644 --- a/src/server/game/Server/Protocol/PacketLog.h +++ b/src/server/game/Server/Protocol/PacketLog.h @@ -37,8 +37,8 @@ class PacketLog public: static PacketLog* instance() { - static PacketLog* instance = new PacketLog(); - return instance; + static PacketLog instance; + return &instance; } void Initialize(); diff --git a/src/server/game/Server/WorldSocket.cpp b/src/server/game/Server/WorldSocket.cpp index db8d4e8a3e8..2680df3ac3a 100644 --- a/src/server/game/Server/WorldSocket.cpp +++ b/src/server/game/Server/WorldSocket.cpp @@ -82,7 +82,12 @@ void WorldSocket::AsyncReadHeader() } else { - _socket.close(); + // _socket.is_open() till returns true even after calling close() + try + { + _socket.close(); + } + catch (std::exception const& /*ex*/) { } } }); } @@ -187,7 +192,12 @@ void WorldSocket::AsyncReadData(size_t dataSize) } else { - _socket.close(); + // _socket.is_open() till returns true even after calling close() + try + { + _socket.close(); + } + catch (std::exception const& /*ex*/) {} } }); } diff --git a/src/server/game/Spells/SpellInfo.cpp b/src/server/game/Spells/SpellInfo.cpp index e2c66dc6b3a..4b6e4dc2ee7 100644 --- a/src/server/game/Spells/SpellInfo.cpp +++ b/src/server/game/Spells/SpellInfo.cpp @@ -2576,6 +2576,8 @@ bool SpellInfo::_IsPositiveEffect(uint8 effIndex, bool deep) const case 61716: // Rabbit Costume case 61734: // Noblegarden Bunny case 62344: // Fists of Stone + case 61819: // Manabonked! (item) + case 61834: // Manabonked! (minigob) return true; default: break; diff --git a/src/server/game/Spells/SpellMgr.h b/src/server/game/Spells/SpellMgr.h index 775d3f0c36d..f2555820b92 100644 --- a/src/server/game/Spells/SpellMgr.h +++ b/src/server/game/Spells/SpellMgr.h @@ -610,9 +610,8 @@ class SpellMgr public: static SpellMgr* instance() { - static SpellMgr* instance = new SpellMgr(); - - return instance; + static SpellMgr instance; + return &instance; } // Spell correctness for client using diff --git a/src/server/game/Texts/CreatureTextMgr.h b/src/server/game/Texts/CreatureTextMgr.h index d1db202ca68..aef38a1923e 100644 --- a/src/server/game/Texts/CreatureTextMgr.h +++ b/src/server/game/Texts/CreatureTextMgr.h @@ -89,8 +89,8 @@ class CreatureTextMgr public: static CreatureTextMgr* instance() { - static CreatureTextMgr* instance = new CreatureTextMgr(); - return instance; + static CreatureTextMgr instance; + return &instance; } void LoadCreatureTexts(); diff --git a/src/server/game/Tickets/TicketMgr.h b/src/server/game/Tickets/TicketMgr.h index 00b4e228fab..5ad44365e7f 100644 --- a/src/server/game/Tickets/TicketMgr.h +++ b/src/server/game/Tickets/TicketMgr.h @@ -180,8 +180,8 @@ private: public: static TicketMgr* instance() { - static TicketMgr* instance = new TicketMgr(); - return instance; + static TicketMgr instance; + return &instance; } void LoadTickets(); diff --git a/src/server/game/Warden/WardenCheckMgr.h b/src/server/game/Warden/WardenCheckMgr.h index c9e26283060..4a56c1fc849 100644 --- a/src/server/game/Warden/WardenCheckMgr.h +++ b/src/server/game/Warden/WardenCheckMgr.h @@ -57,8 +57,8 @@ class WardenCheckMgr public: static WardenCheckMgr* instance() { - static WardenCheckMgr* instance = new WardenCheckMgr(); - return instance; + static WardenCheckMgr instance; + return &instance; } // We have a linear key without any gaps, so we use vector for fast access diff --git a/src/server/game/World/World.h b/src/server/game/World/World.h index 557a0e62965..00c897a6f00 100644 --- a/src/server/game/World/World.h +++ b/src/server/game/World/World.h @@ -539,8 +539,8 @@ class World public: static World* instance() { - static World* instance = new World(); - return instance; + static World instance; + return &instance; } static std::atomic<uint32> m_worldLoopCounter; |