# HG changeset patch # User michi_cc # Date 2010-01-11 00:02:14 # Node ID 40beee5d2e829ce0fa3c0c80b7c3d338f1d9e9ee # Parent af5f8f92d190eb4d261d1a04b8a1498897a4b785 (svn r18778) -Fix [FS#3483]: [YAPP] Remove a special check for two-sided signals when reserving a path as this causes trains to get stuck in front of them. diff --git a/src/train_cmd.cpp b/src/train_cmd.cpp --- a/src/train_cmd.cpp +++ b/src/train_cmd.cpp @@ -2851,20 +2851,6 @@ bool TryPathReserve(Train *v, bool mark_ } } - /* Special check if we are in front of a two-sided conventional signal. */ - DiagDirection dir = TrainExitDir(v->direction, v->track); - TileIndex next_tile = TileAddByDiagDir(v->tile, dir); - if (IsTileType(next_tile, MP_RAILWAY) && HasReservedTracks(next_tile, DiagdirReachesTracks(dir))) { - /* Can have only one reserved trackdir. */ - Trackdir td = FindFirstTrackdir(TrackBitsToTrackdirBits(GetReservedTrackbits(next_tile)) & DiagdirReachesTrackdirs(dir)); - if (HasSignalOnTrackdir(next_tile, td) && HasSignalOnTrackdir(next_tile, ReverseTrackdir(td)) && - !IsPbsSignal(GetSignalType(next_tile, TrackdirToTrack(td)))) { - /* Signal already reserved, is not ours. */ - if (mark_as_stuck) MarkTrainAsStuck(v); - return false; - } - } - Vehicle *other_train = NULL; PBSTileInfo origin = FollowTrainReservation(v, &other_train); /* The path we are driving on is alread blocked by some other train.