(svn r27590) [1.6] -Backport from trunk:

- Fix: Memory leak when disabling palette animation [FS#6404] (r27575)
- Fix: [NewGRF] The house id as returned by house variable 66 was incorrect when querying neighboured tiles [FS#6432] (r27574)
- Fix: [Build] Compilation failure with gcc 6.1 due to headers included after safeguards.h [FS#6467] (r27573)
- Fix: Convenience savegame bump to distinguish 1.6 savegames from 1.5 savegames [FS#6442] (r27572)
This commit is contained in:
frosch
2016-05-29 19:01:50 +00:00
committed by Sergii Pylypenko
parent 4204ff8fff
commit 9f04b98dcb
5 changed files with 46 additions and 38 deletions
+4 -3
View File
@@ -399,7 +399,8 @@ static uint32 GetDistanceFromNearbyHouse(uint8 parameter, TileIndex tile, HouseI
case 0x66: {
TileIndex testtile = GetNearbyTile(parameter, this->tile);
if (!IsTileType(testtile, MP_HOUSE)) return 0xFFFFFFFF;
HouseSpec *hs = HouseSpec::Get(GetHouseType(testtile));
HouseID nearby_house_id = GetHouseType(testtile);
HouseSpec *hs = HouseSpec::Get(nearby_house_id);
/* Information about the grf local classid if the house has a class */
uint houseclass = 0;
if (hs->class_id != HOUSE_NO_CLASS) {
@@ -408,8 +409,8 @@ static uint32 GetDistanceFromNearbyHouse(uint8 parameter, TileIndex tile, HouseI
}
/* old house type or grf-local houseid */
uint local_houseid = 0;
if (this->house_id < NEW_HOUSE_OFFSET) {
local_houseid = this->house_id;
if (nearby_house_id < NEW_HOUSE_OFFSET) {
local_houseid = nearby_house_id;
} else {
local_houseid = (hs->grf_prop.grffile == this->ro.grffile ? 1 : 2) << 8;
local_houseid |= hs->grf_prop.local_id;