aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDDuarte <dnpd.dd@gmail.com>2015-06-01 02:09:45 +0100
committerDDuarte <dnpd.dd@gmail.com>2015-06-01 02:09:45 +0100
commit08b8dd10d1f6d1564eb5063f333ef3a958e76bb1 (patch)
tree2b863ba1dcd8c1dd060f6ff718737ec9c381bf38
parent1e54097084a862c064164be150ae22aeb9d3ef54 (diff)
Core/GOs: Correct type of lowGuid when loading gameobject_addons
Coverity IDs: 1302436 1302437 1302438 Issue introduced in 95b5e357451985fbc350bf1321ce96d6c02f9d44
-rw-r--r--sql/updates/world/2015_06_01_00_world.sql1
-rw-r--r--src/server/game/Globals/ObjectMgr.cpp8
2 files changed, 5 insertions, 4 deletions
diff --git a/sql/updates/world/2015_06_01_00_world.sql b/sql/updates/world/2015_06_01_00_world.sql
new file mode 100644
index 00000000000..8ba1d65ec52
--- /dev/null
+++ b/sql/updates/world/2015_06_01_00_world.sql
@@ -0,0 +1 @@
+ALTER TABLE `gameobject_addon` MODIFY `guid` int(10) unsigned NOT NULL DEFAULT '0';
diff --git a/src/server/game/Globals/ObjectMgr.cpp b/src/server/game/Globals/ObjectMgr.cpp
index a3414c72613..e540824e71c 100644
--- a/src/server/game/Globals/ObjectMgr.cpp
+++ b/src/server/game/Globals/ObjectMgr.cpp
@@ -1057,12 +1057,12 @@ void ObjectMgr::LoadGameObjectAddons()
{
Field* fields = result->Fetch();
- ObjectGuid::LowType guid = fields[0].GetUInt64();
+ ObjectGuid::LowType guid = fields[0].GetUInt32();
const GameObjectData* goData = GetGOData(guid);
if (!goData)
{
- TC_LOG_ERROR("sql.sql", "GameObject (GUID: " UI64FMTD ") does not exist but has a record in `gameobject_addon`", guid);
+ TC_LOG_ERROR("sql.sql", "GameObject (GUID: %u) does not exist but has a record in `gameobject_addon`", guid);
continue;
}
@@ -1072,14 +1072,14 @@ void ObjectMgr::LoadGameObjectAddons()
if (gameObjectAddon.invisibilityType >= TOTAL_INVISIBILITY_TYPES)
{
- TC_LOG_ERROR("sql.sql", "GameObject (GUID: " UI64FMTD ") has invalid InvisibilityType in `gameobject_addon`", guid);
+ TC_LOG_ERROR("sql.sql", "GameObject (GUID: %u) has invalid InvisibilityType in `gameobject_addon`", guid);
gameObjectAddon.invisibilityType = INVISIBILITY_GENERAL;
gameObjectAddon.InvisibilityValue = 0;
}
if (gameObjectAddon.invisibilityType && !gameObjectAddon.InvisibilityValue)
{
- TC_LOG_ERROR("sql.sql", "GameObject (GUID: " UI64FMTD ") has InvisibilityType set but has no InvisibilityValue in `gameobject_addon`, set to 1", guid);
+ TC_LOG_ERROR("sql.sql", "GameObject (GUID: %u) has InvisibilityType set but has no InvisibilityValue in `gameobject_addon`, set to 1", guid);
gameObjectAddon.InvisibilityValue = 1;
}