return;
// Are we waiting for the other train to pass a sequence point?
- SequencePoint &sp = sequence_points.front();
- if(sp.preceding_train==t && sp.block==&block)
- /* The other train's router will advance its sequence on the same
- signal and may not have handled it yet. */
- state = SEQUENCE_CHECK_PENDING;
+ if(state==WAITING_FOR_SEQUENCE)
+ {
+ SequencePoint &sp = sequence_points.front();
+ if(sp.preceding_train==t && sp.block==&block)
+ /* The other train's router will advance its sequence on the same
+ signal and may not have handled it yet. */
+ state = SEQUENCE_CHECK_PENDING;
+ }
return;
}