diff --git a/misc_gui.c b/misc_gui.c index 8517782f8e..8579a2dc7e 100644 --- a/misc_gui.c +++ b/misc_gui.c @@ -704,11 +704,10 @@ static void DrawStationCoverageText(const AcceptedCargo accepts, } void DrawStationCoverageAreaText(int sx, int sy, uint mask, int rad) { - int x = _thd.pos.x; - int y = _thd.pos.y; + TileIndex tile = TileVirtXY(_thd.pos.x, _thd.pos.y); AcceptedCargo accepts; - if (x != -1) { - GetAcceptanceAroundTiles(accepts, TileVirtXY(x, y), _thd.size.x / 16, _thd.size.y / 16 , rad); + if (tile < MapSize()) { + GetAcceptanceAroundTiles(accepts, tile, _thd.size.x / 16, _thd.size.y / 16 , rad); DrawStationCoverageText(accepts, sx, sy, mask); } } diff --git a/openttd.c b/openttd.c index d30e44bf55..28c97c3b53 100644 --- a/openttd.c +++ b/openttd.c @@ -814,10 +814,6 @@ void SwitchMode(int new_mode) if (_switch_mode_errorstr != INVALID_STRING_ID) ShowErrorMessage(INVALID_STRING_ID,_switch_mode_errorstr,0,0); - - // Reset the TileHighlightData as it may be out of bounds if - // the new map is smaller than the old map. - memset(&_thd, 0, sizeof(_thd)); }