(svn r14297) -Fix: one could be trying to get the station name of a station that is outside of the pool.

replace/41b28d7194a279bdc17475d4fbe2ea6ec885a466
rubidium 16 years ago
parent 8f42c38039
commit 8d449825f9

@ -838,11 +838,18 @@ static char* FormatString(char* buff, const char* str, const int64* argv, uint c
}
case SCC_STATION_NAME: { // {STATION}
const Station* st = GetStation(GetInt32(&argv));
StationID sid = GetInt32(&argv);
if (!st->IsValid()) { // station doesn't exist anymore
if (!IsValidStationID(sid)) {
/* The station doesn't exist anymore. The only place where we might
* be "drawing" an invalid station is in the case of cargo that is
* in transit. */
buff = GetStringWithArgs(buff, STR_UNKNOWN_DESTINATION, NULL, last);
} else if (st->name != NULL) {
break;
}
const Station *st = GetStation(sid);
if (st->name != NULL) {
buff = strecpy(buff, st->name, last);
} else {
int64 temp[3];

Loading…
Cancel
Save