summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/pathfinder/follow_track.hpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/pathfinder/follow_track.hpp b/src/pathfinder/follow_track.hpp
index a16512bc0..9f19b029c 100644
--- a/src/pathfinder/follow_track.hpp
+++ b/src/pathfinder/follow_track.hpp
@@ -144,7 +144,12 @@ struct CFollowTrackT
* missing road bit, or inability to connect the
* different bits due to slopes. */
if (IsRoadTT() && !IsTram() && TryReverse()) return true;
- m_err = EC_NO_WAY;
+
+ /* CanEnterNewTile already set a reason.
+ * Do NOT overwrite it (important for example for EC_RAIL_TYPE).
+ * Only set a reason if CanEnterNewTile was not called */
+ if (m_new_td_bits == TRACKDIR_BIT_NONE) m_err = EC_NO_WAY;
+
return false;
}
if (!Allow90degTurns()) {