From a4aba77e49f59640160a9f903ac45d22b3e69df1 Mon Sep 17 00:00:00 2001 From: michi_cc Date: Thu, 5 Mar 2009 16:14:56 +0000 Subject: (svn r15619) -Fix [FS#2701]: When trying to reserve a self-crossing path the failed reservation was sometimes not cleared completely. --- src/yapf/yapf_rail.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/yapf') diff --git a/src/yapf/yapf_rail.cpp b/src/yapf/yapf_rail.cpp index c8789897f..0f5415052 100644 --- a/src/yapf/yapf_rail.cpp +++ b/src/yapf/yapf_rail.cpp @@ -81,7 +81,7 @@ private: } } - return tile != m_res_dest; + return tile != m_res_dest || td != m_res_dest_td; } /** Unreserve a single track/platform. Stops when the previous failer is reached. */ @@ -97,7 +97,7 @@ private: } else if (tile != m_res_fail_tile || td != m_res_fail_td) { UnreserveRailTrack(tile, TrackdirToTrack(td)); } - return tile != m_res_dest && (tile != m_res_fail_tile || td != m_res_fail_td); + return (tile != m_res_dest || td != m_res_dest_td) && (tile != m_res_fail_tile || td != m_res_fail_td); } public: -- cgit v1.2.3-70-g09d2