diff options
-rw-r--r-- | station_cmd.c | 6 |
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); |