From 9556623281832d25d73b2f65ff6a66f4680ed866 Mon Sep 17 00:00:00 2001 From: smatz Date: Wed, 16 Jan 2008 01:18:15 +0000 Subject: (svn r11871) -Fix [FS#1074]: do not update signals after each tile when building/removing a large block of track/signals/station --- src/economy.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'src/economy.cpp') diff --git a/src/economy.cpp b/src/economy.cpp index d9f51bb82..9377a7a80 100644 --- a/src/economy.cpp +++ b/src/economy.cpp @@ -440,10 +440,13 @@ void ChangeOwnershipOfPlayerItems(PlayerID old_player, PlayerID new_player) TrackBits tracks = GetTrackBits(tile); do { // there may be two tracks with signals for TRACK_BIT_HORZ and TRACK_BIT_VERT Track track = RemoveFirstTrack(&tracks); - if (HasSignalOnTrack(tile, track)) SetSignalsOnBothDir(tile, track, new_player); + if (HasSignalOnTrack(tile, track)) AddTrackToSignalBuffer(tile, track, new_player); } while (tracks != TRACK_BIT_NONE); } } while (++tile != MapSize()); + + /* update signals in buffer */ + UpdateSignalsInBuffer(); } } -- cgit v1.2.3-54-g00ecf