switch(row.type)
{
case GOTO:
- train.go_to(**parse_location(row.get_param<string>(0)).get_tracks().begin());
+ if(!train.go_to(**parse_location(row.get_param<string>(0)).get_tracks().begin()))
+ set_enabled(false);
break;
case TRAVEL:
pending_block = &parse_location(row.get_param<string>(0));
train.set_control("reverse", !train.get_control("reverse"));
break;
case ROUTE:
- train.set_route(&train.get_layout().get_route(row.get_param<string>(0)));
+ if(!train.set_route(&train.get_layout().get_route(row.get_param<string>(0))))
+ set_enabled(false);
break;
}