mirror of https://github.com/OpenTTD/OpenTTD.git
Fix: Check station ID is within bounds when copying layouts.
This commit is contained in:
parent
4c756159fd
commit
67bd6ab0ad
|
@ -1999,7 +1999,7 @@ static ChangeInfoResult StationChangeInfo(uint stid, int numinfo, int prop, Byte
|
|||
|
||||
case 0x0A: { // Copy sprite layout
|
||||
byte srcid = buf->ReadByte();
|
||||
const StationSpec *srcstatspec = _cur.grffile->stations[srcid];
|
||||
const StationSpec *srcstatspec = srcid >= NUM_STATIONS_PER_GRF ? nullptr : _cur.grffile->stations[srcid];
|
||||
|
||||
if (srcstatspec == nullptr) {
|
||||
grfmsg(1, "StationChangeInfo: Station %u is not defined, cannot copy sprite layout to %u.", srcid, stid + i);
|
||||
|
@ -2053,7 +2053,7 @@ static ChangeInfoResult StationChangeInfo(uint stid, int numinfo, int prop, Byte
|
|||
|
||||
case 0x0F: { // Copy custom layout
|
||||
byte srcid = buf->ReadByte();
|
||||
const StationSpec *srcstatspec = _cur.grffile->stations[srcid];
|
||||
const StationSpec *srcstatspec = srcid >= NUM_STATIONS_PER_GRF ? nullptr : _cur.grffile->stations[srcid];
|
||||
|
||||
if (srcstatspec == nullptr) {
|
||||
grfmsg(1, "StationChangeInfo: Station %u is not defined, cannot copy tile layout to %u.", srcid, stid + i);
|
||||
|
|
Loading…
Reference in New Issue