From: ian Date: Sun, 20 Jul 2008 17:46:05 +0000 (+0000) Subject: more backwardsness bugfix X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ijackson/git?a=commitdiff_plain;h=0f00d577a57972bdd45475c4c64db3ef965ad0c8;p=trains.git more backwardsness bugfix --- diff --git a/hostside/safety.c b/hostside/safety.c index 39043b0..5b1ecd9 100644 --- a/hostside/safety.c +++ b/hostside/safety.c @@ -1062,6 +1062,14 @@ void report_train_ownerships(Train *tra, Segment *hindmost, static int reverse_nextseg(TrackLocation *t, struct TrackAdvanceContext *c, MovPosComb *mpc_io, const TrackLocation *before) { PredictUserContext *u= c->u; + + DPRINTF(safety,predictseg," reverse_nextseg " + " %c%s dist=%-4d\n", + + " -"[t->backwards], + t->seg->i->pname, + c->distance); + if (*mpc_io==-1 || t->seg->motion) return predict_problem(u,t->seg, "segment under train is not stable"); return 0; @@ -1104,7 +1112,7 @@ ErrorCode safety_setdirection(Train *tra, int backwards, newfdet.seg= tra->foredetect; newfdet.remain= tra->maxinto; - newfdet.backwards= !tra->backwards; + newfdet.backwards= !tra->foredetect->tr_backwards; c.distance= tra->detectable + tra->uncertainty; c.nextseg= reverse_nextseg;