diff options
author | jackpoz <giacomopoz@gmail.com> | 2013-11-29 20:57:51 +0100 |
---|---|---|
committer | jackpoz <giacomopoz@gmail.com> | 2013-11-29 20:57:51 +0100 |
commit | 3b471f495c765b2a278bed8e62e9210fab7f80e9 (patch) | |
tree | dbdca995f6e2d88ae0a6dd672ad97535fc5d3db5 /src | |
parent | 4416c1604558506346e7ca6d0ff6ec7fc502215c (diff) |
Core/Transports: Log an error if a Transport has no GameObject template
Log an error if a Transport has no GameObject template from `gameobject_template` table instead of dereferencing NULL .
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Maps/TransportMgr.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/server/game/Maps/TransportMgr.cpp b/src/server/game/Maps/TransportMgr.cpp index b84a8ddb217..11798201397 100644 --- a/src/server/game/Maps/TransportMgr.cpp +++ b/src/server/game/Maps/TransportMgr.cpp @@ -60,6 +60,12 @@ void TransportMgr::LoadTransportTemplates() Field* fields = result->Fetch(); uint32 entry = fields[0].GetUInt32(); GameObjectTemplate const* goInfo = sObjectMgr->GetGameObjectTemplate(entry); + if (goInfo == NULL) + { + TC_LOG_ERROR("sql.sql", "Transport %u has no associated GameObjectTemplate from `gameobject_template` , skipped.", entry); + continue; + } + if (goInfo->moTransport.taxiPathId >= sTaxiPathNodesByPath.size()) { TC_LOG_ERROR("sql.sql", "Transport %u (name: %s) has an invalid path specified in `gameobject_template`.`data0` (%u) field, skipped.", entry, goInfo->name.c_str(), goInfo->moTransport.taxiPathId); |