aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorKandera <KanderaDev@gmail.com>2012-08-22 13:08:57 -0400
committerKandera <KanderaDev@gmail.com>2012-08-22 13:08:57 -0400
commit85ed0e32a9b2b029c1db3cf1a914b3940cf72b9b (patch)
treeaf5dfc71143079ab27d8bc06db5a849369e18e86 /src
parentad26178c3b5c393594c7038fb44a98e9cd9e7733 (diff)
Core/Wintergrasp: fix possible crash when rebuild hits non rebuildable buildings
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Battlefield/Zones/BattlefieldWG.h11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/server/game/Battlefield/Zones/BattlefieldWG.h b/src/server/game/Battlefield/Zones/BattlefieldWG.h
index 924ff1ad454..be062704b52 100644
--- a/src/server/game/Battlefield/Zones/BattlefieldWG.h
+++ b/src/server/game/Battlefield/Zones/BattlefieldWG.h
@@ -1192,11 +1192,14 @@ struct BfWGGameObjectBuilding
}
// Rebuild gameobject
- m_Build->SetDestructibleState(GO_DESTRUCTIBLE_REBUILDING, NULL, true);
+ if (m_Build->IsDestructibleBuilding())
+ {
+ m_Build->SetDestructibleState(GO_DESTRUCTIBLE_REBUILDING, NULL, true);
- // Update worldstate
- m_State = BATTLEFIELD_WG_OBJECTSTATE_ALLIANCE_INTACT - (m_Team * 3);
- m_WG->SendUpdateWorldState(m_WorldState, m_State);
+ // Update worldstate
+ m_State = BATTLEFIELD_WG_OBJECTSTATE_ALLIANCE_INTACT - (m_Team * 3);
+ m_WG->SendUpdateWorldState(m_WorldState, m_State);
+ }
UpdateCreatureAndGo();
m_Build->SetUInt32Value(GAMEOBJECT_FACTION, WintergraspFaction[m_Team]);
}