mirror of
https://github.com/JGRennison/OpenTTD-patches.git
synced 2024-11-17 21:25:40 +00:00
(svn r14201) -Codechange: [NewGRF] Don't continue processing an Action 0 if we didn't read the data for a property -- the data will be wrong for subsequent reads.
-Codechange: [NewGRF] *Do* continue processing if the value of a property is invalid, however.
This commit is contained in:
parent
6b86de13d6
commit
7e88b7bb3e
@ -1094,7 +1094,7 @@ static bool StationChangeInfo(uint stid, int numinfo, int prop, byte **bufp, int
|
|||||||
/* Check that the station we are modifying is defined. */
|
/* Check that the station we are modifying is defined. */
|
||||||
if (statspec == NULL && prop != 0x08) {
|
if (statspec == NULL && prop != 0x08) {
|
||||||
grfmsg(2, "StationChangeInfo: Attempt to modify undefined station %u, ignoring", stid + i);
|
grfmsg(2, "StationChangeInfo: Attempt to modify undefined station %u, ignoring", stid + i);
|
||||||
continue;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (prop) {
|
switch (prop) {
|
||||||
@ -1435,7 +1435,7 @@ static bool TownHouseChangeInfo(uint hid, int numinfo, int prop, byte **bufp, in
|
|||||||
|
|
||||||
if (prop != 0x08 && housespec == NULL) {
|
if (prop != 0x08 && housespec == NULL) {
|
||||||
grfmsg(2, "TownHouseChangeInfo: Attempt to modify undefined house %u. Ignoring.", hid + i);
|
grfmsg(2, "TownHouseChangeInfo: Attempt to modify undefined house %u. Ignoring.", hid + i);
|
||||||
continue;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (prop) {
|
switch (prop) {
|
||||||
@ -1451,7 +1451,7 @@ static bool TownHouseChangeInfo(uint hid, int numinfo, int prop, byte **bufp, in
|
|||||||
} else if (subs_id >= NEW_HOUSE_OFFSET) {
|
} else if (subs_id >= NEW_HOUSE_OFFSET) {
|
||||||
/* The substitute id must be one of the original houses. */
|
/* The substitute id must be one of the original houses. */
|
||||||
grfmsg(2, "TownHouseChangeInfo: Attempt to use new house %u as substitute house for %u. Ignoring.", subs_id, hid + i);
|
grfmsg(2, "TownHouseChangeInfo: Attempt to use new house %u as substitute house for %u. Ignoring.", subs_id, hid + i);
|
||||||
return false;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Allocate space for this house. */
|
/* Allocate space for this house. */
|
||||||
@ -1909,7 +1909,7 @@ static bool SoundEffectChangeInfo(uint sid, int numinfo, int prop, byte **bufp,
|
|||||||
|
|
||||||
if (sound >= GetNumSounds()) {
|
if (sound >= GetNumSounds()) {
|
||||||
grfmsg(1, "SoundEffectChangeInfo: Sound %d not defined (max %d)", sound, GetNumSounds());
|
grfmsg(1, "SoundEffectChangeInfo: Sound %d not defined (max %d)", sound, GetNumSounds());
|
||||||
continue;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (prop) {
|
switch (prop) {
|
||||||
@ -1965,7 +1965,7 @@ static bool IndustrytilesChangeInfo(uint indtid, int numinfo, int prop, byte **b
|
|||||||
|
|
||||||
if (prop != 0x08 && tsp == NULL) {
|
if (prop != 0x08 && tsp == NULL) {
|
||||||
grfmsg(2, "IndustryTilesChangeInfo: Attempt to modify undefined industry tile %u. Ignoring.", indtid + i);
|
grfmsg(2, "IndustryTilesChangeInfo: Attempt to modify undefined industry tile %u. Ignoring.", indtid + i);
|
||||||
continue;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (prop) {
|
switch (prop) {
|
||||||
@ -1976,7 +1976,7 @@ static bool IndustrytilesChangeInfo(uint indtid, int numinfo, int prop, byte **b
|
|||||||
if (subs_id >= NEW_INDUSTRYTILEOFFSET) {
|
if (subs_id >= NEW_INDUSTRYTILEOFFSET) {
|
||||||
/* The substitute id must be one of the original industry tile. */
|
/* The substitute id must be one of the original industry tile. */
|
||||||
grfmsg(2, "IndustryTilesChangeInfo: Attempt to use new industry tile %u as substitute industry tile for %u. Ignoring.", subs_id, indtid + i);
|
grfmsg(2, "IndustryTilesChangeInfo: Attempt to use new industry tile %u as substitute industry tile for %u. Ignoring.", subs_id, indtid + i);
|
||||||
return false;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Allocate space for this industry. */
|
/* Allocate space for this industry. */
|
||||||
@ -2007,7 +2007,7 @@ static bool IndustrytilesChangeInfo(uint indtid, int numinfo, int prop, byte **b
|
|||||||
/* The industry being overridden must be an original industry. */
|
/* The industry being overridden must be an original industry. */
|
||||||
if (ovrid >= NEW_INDUSTRYTILEOFFSET) {
|
if (ovrid >= NEW_INDUSTRYTILEOFFSET) {
|
||||||
grfmsg(2, "IndustryTilesChangeInfo: Attempt to override new industry tile %u with industry tile id %u. Ignoring.", ovrid, indtid + i);
|
grfmsg(2, "IndustryTilesChangeInfo: Attempt to override new industry tile %u with industry tile id %u. Ignoring.", ovrid, indtid + i);
|
||||||
return false;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
_industile_mngr.Add(indtid + i, _cur_grffile->grfid, ovrid);
|
_industile_mngr.Add(indtid + i, _cur_grffile->grfid, ovrid);
|
||||||
@ -2077,7 +2077,7 @@ static bool IndustriesChangeInfo(uint indid, int numinfo, int prop, byte **bufp,
|
|||||||
|
|
||||||
if (prop != 0x08 && indsp == NULL) {
|
if (prop != 0x08 && indsp == NULL) {
|
||||||
grfmsg(2, "IndustriesChangeInfo: Attempt to modify undefined industry %u. Ignoring.", indid + i);
|
grfmsg(2, "IndustriesChangeInfo: Attempt to modify undefined industry %u. Ignoring.", indid + i);
|
||||||
continue;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (prop) {
|
switch (prop) {
|
||||||
@ -2093,7 +2093,7 @@ static bool IndustriesChangeInfo(uint indid, int numinfo, int prop, byte **bufp,
|
|||||||
} else if (subs_id >= NEW_INDUSTRYOFFSET) {
|
} else if (subs_id >= NEW_INDUSTRYOFFSET) {
|
||||||
/* The substitute id must be one of the original industry. */
|
/* The substitute id must be one of the original industry. */
|
||||||
grfmsg(2, "_industry_specs: Attempt to use new industry %u as substitute industry for %u. Ignoring.", subs_id, indid + i);
|
grfmsg(2, "_industry_specs: Attempt to use new industry %u as substitute industry for %u. Ignoring.", subs_id, indid + i);
|
||||||
return false;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Allocate space for this industry.
|
/* Allocate space for this industry.
|
||||||
@ -2120,7 +2120,7 @@ static bool IndustriesChangeInfo(uint indid, int numinfo, int prop, byte **bufp,
|
|||||||
/* The industry being overridden must be an original industry. */
|
/* The industry being overridden must be an original industry. */
|
||||||
if (ovrid >= NEW_INDUSTRYOFFSET) {
|
if (ovrid >= NEW_INDUSTRYOFFSET) {
|
||||||
grfmsg(2, "IndustriesChangeInfo: Attempt to override new industry %u with industry id %u. Ignoring.", ovrid, indid + i);
|
grfmsg(2, "IndustriesChangeInfo: Attempt to override new industry %u with industry id %u. Ignoring.", ovrid, indid + i);
|
||||||
return false;
|
continue;
|
||||||
}
|
}
|
||||||
indsp->grf_prop.override = ovrid;
|
indsp->grf_prop.override = ovrid;
|
||||||
_industry_mngr.Add(indid + i, _cur_grffile->grfid, ovrid);
|
_industry_mngr.Add(indid + i, _cur_grffile->grfid, ovrid);
|
||||||
|
Loading…
Reference in New Issue
Block a user