diff options
Diffstat (limited to 'src/server/game/Globals/ObjectMgr.cpp')
-rwxr-xr-x | src/server/game/Globals/ObjectMgr.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/server/game/Globals/ObjectMgr.cpp b/src/server/game/Globals/ObjectMgr.cpp index a94a12a99fe..ff734efe385 100755 --- a/src/server/game/Globals/ObjectMgr.cpp +++ b/src/server/game/Globals/ObjectMgr.cpp @@ -264,16 +264,20 @@ ObjectMgr::~ObjectMgr() // free only if loaded for (int class_ = 0; class_ < MAX_CLASSES; ++class_) { - delete[] _playerClassInfo[class_]->levelInfo; + if (_playerClassInfo[class_]) + delete[] _playerClassInfo[class_]->levelInfo; delete _playerClassInfo[class_]; } for (int race = 0; race < MAX_RACES; ++race) + { for (int class_ = 0; class_ < MAX_CLASSES; ++class_) { - delete[] _playerInfo[race][class_]->levelInfo; + if (_playerInfo[race][class_]) + delete[] _playerInfo[race][class_]->levelInfo; delete _playerInfo[race][class_]; } + } for (CacheVendorItemContainer::iterator itr = _cacheVendorItemStore.begin(); itr != _cacheVendorItemStore.end(); ++itr) itr->second.Clear(); |