summaryrefslogtreecommitdiff
path: root/station_cmd.c
diff options
context:
space:
mode:
authortron <tron@openttd.org>2005-05-07 08:14:06 +0000
committertron <tron@openttd.org>2005-05-07 08:14:06 +0000
commitb90e9d49caf46acc51975fdf995858b20d13055f (patch)
tree6ee34b8db58d571fa1af1e03315fbd06a844c754 /station_cmd.c
parent0618a6d0dfa3dfe3dda89a5c180d5b5528f246f1 (diff)
downloadopenttd-b90e9d49caf46acc51975fdf995858b20d13055f.tar.xz
(svn r2278) When renaming a station, check if the station exists and belongs to the correct player
Diffstat (limited to 'station_cmd.c')
-rw-r--r--station_cmd.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/station_cmd.c b/station_cmd.c
index 9042ce6ed..c4269b9e4 100644
--- a/station_cmd.c
+++ b/station_cmd.c
@@ -2650,12 +2650,16 @@ int32 CmdRenameStation(int x, int y, uint32 flags, uint32 p1, uint32 p2)
StringID str,old_str;
Station *st;
+ if (!IsStationIndex(p1)) return CMD_ERROR;
+ st = GetStation(p1);
+
+ if (!IsValidStation(st) || !CheckOwnership(st->owner)) return CMD_ERROR;
+
str = AllocateNameUnique((const char*)_decode_parameters, 6);
if (str == 0)
return CMD_ERROR;
if (flags & DC_EXEC) {
- st = GetStation(p1);
old_str = st->string_id;
st->string_id = str;
UpdateStationVirtCoord(st);