Fix incorrect tile and trackdir in reserve through program execution

This commit is contained in:
Jonathan G Rennison
2018-03-03 18:07:57 +00:00
parent 7986367c1f
commit a9596b45aa

View File

@@ -488,7 +488,7 @@ bool IsSafeWaitingPosition(const Train *v, TileIndex tile, Trackdir trackdir, bo
const TraceRestrictProgram *prog = GetExistingTraceRestrictProgram(ft.m_new_tile, TrackdirToTrack(td)); const TraceRestrictProgram *prog = GetExistingTraceRestrictProgram(ft.m_new_tile, TrackdirToTrack(td));
if (prog && prog->actions_used_flags & TRPAUF_RESERVE_THROUGH) { if (prog && prog->actions_used_flags & TRPAUF_RESERVE_THROUGH) {
TraceRestrictProgramResult out; TraceRestrictProgramResult out;
prog->Execute(v, TraceRestrictProgramInput(tile, trackdir, &VehiclePosTraceRestrictPreviousSignalCallback, NULL), out); prog->Execute(v, TraceRestrictProgramInput(ft.m_new_tile, td, &VehiclePosTraceRestrictPreviousSignalCallback, NULL), out);
if (out.flags & TRPRF_RESERVE_THROUGH) { if (out.flags & TRPRF_RESERVE_THROUGH) {
return false; return false;
} }