summaryrefslogtreecommitdiff
path: root/src/game
diff options
context:
space:
mode:
authorglx22 <glx22@users.noreply.github.com>2019-09-07 18:37:01 +0200
committerCharles Pigott <charlespigott@googlemail.com>2019-09-07 17:37:01 +0100
commitb3fd7879596defeb6af78acb4ea45e4418821bdf (patch)
tree08b94b2cd65012e573b0e8c94196daab5aab12ba /src/game
parent381c2a45875206afe43241d0c76619638cf613fc (diff)
downloadopenttd-b3fd7879596defeb6af78acb4ea45e4418821bdf.tar.xz
Fix #7188: check the validity of command callback for scripts (#7701)
Diffstat (limited to 'src/game')
-rw-r--r--src/game/game_instance.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/game/game_instance.cpp b/src/game/game_instance.cpp
index be093ca00..8d4f5f2b2 100644
--- a/src/game/game_instance.cpp
+++ b/src/game/game_instance.cpp
@@ -257,11 +257,13 @@ void GameInstance::Died()
* @param tile The tile on which the command was executed.
* @param p1 p1 as given to DoCommandPInternal.
* @param p2 p2 as given to DoCommandPInternal.
+ * @param cmd cmd as given to DoCommandPInternal.
*/
-void CcGame(const CommandCost &result, TileIndex tile, uint32 p1, uint32 p2)
+void CcGame(const CommandCost &result, TileIndex tile, uint32 p1, uint32 p2, uint32 cmd)
{
- Game::GetGameInstance()->DoCommandCallback(result, tile, p1, p2);
- Game::GetGameInstance()->Continue();
+ if (Game::GetGameInstance()->DoCommandCallback(result, tile, p1, p2, cmd)) {
+ Game::GetGameInstance()->Continue();
+ }
}
CommandCallback *GameInstance::GetDoCommandCallback()