Mercurial > hg > openttd
changeset 8531:e1f4b0ce4884 draft
(svn r12106) -Fix(r12105): Kill warnings and raise an error when the transport type is not supported
author | belugas <belugas@openttd.org> |
---|---|
date | Mon, 11 Feb 2008 03:22:44 +0000 |
parents | 6a0cdc5bc1b1 |
children | b3bd4f1ed981 |
files | src/tunnelbridge_cmd.cpp |
diffstat | 1 files changed, 11 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/src/tunnelbridge_cmd.cpp +++ b/src/tunnelbridge_cmd.cpp @@ -202,12 +202,9 @@ /* unpack parameters */ bridge_type = GB(p2, 0, 8); + if (p1 >= MapSize()) return CMD_ERROR; + transport_type = (TransportType)GB(p2, 15, 2); - /* For now, only TRANSPORT_RAIL and TRANSPORT_ROAD are allowed. - * But let not this stops us for preparing the future */ - if (transport_type >= TRANSPORT_WATER) return CMD_ERROR; - - if (p1 >= MapSize()) return CMD_ERROR; /* type of bridge */ switch (transport_type) { @@ -220,6 +217,11 @@ railtype = (RailType)GB(p2, 8, 8); if (!ValParamRailtype(railtype)) return CMD_ERROR; break; + + default: + /* For now, only TRANSPORT_RAIL and TRANSPORT_ROAD are allowed. + * But let not this stops us for preparing the future */ + return CMD_ERROR; } x = TileX(end_tile); @@ -356,6 +358,10 @@ MakeRoadBridgeRamp(tile_start, owner, bridge_type, dir, roadtypes); MakeRoadBridgeRamp(tile_end, owner, bridge_type, ReverseDiagDir(dir), roadtypes); break; + + default: + NOT_REACHED(); + break; } MarkTileDirtyByTile(tile_start); MarkTileDirtyByTile(tile_end);