# HG changeset patch # User frosch # Date 2009-11-29 18:46:54 # Node ID 2b9002b0adac773313941dc144cf1fb94a74b1a8 # Parent 738001f726e0cbed3bec5689a94a5b764f6e5f89 (svn r18341) -Fix: Replace some GetNextVehicle() with GetNextUnit() where needed. diff --git a/src/train_cmd.cpp b/src/train_cmd.cpp --- a/src/train_cmd.cpp +++ b/src/train_cmd.cpp @@ -1174,7 +1174,8 @@ CommandCost CmdMoveRailVehicle(TileIndex * row that are being moved. */ if (HasBit(p2, 0)) { const Train *u; - for (u = src_head; u != src && u != NULL; u = u->GetNextVehicle()) { + /* CheckTrainStoppedInDepot() does counts dual-headed engines only once, so also do it here */ + for (u = src_head; u != src && u != NULL; u = u->GetNextUnit()) { src_len--; } } else { @@ -1326,7 +1327,7 @@ CommandCost CmdMoveRailVehicle(TileIndex /* If we move the front Engine and if the second vehicle is not an engine add the whole vehicle to the DEFAULT_GROUP */ if (src->IsFrontEngine() && !IsDefaultGroupID(src->group_id)) { - Train *v = src->GetNextVehicle(); + Train *v = src->GetNextUnit(); if (v != NULL && v->IsEngine()) { v->group_id = src->group_id; @@ -1520,7 +1521,7 @@ CommandCost CmdSellRailWagon(TileIndex t /* 2. We are selling the front vehicle, some special action might be required * here, so take attention */ if (v == first) { - Train *new_f = first->GetNextVehicle(); + Train *new_f = first->GetNextUnit(); /* 2.2 If there are wagons present after the deleted front engine, check * if the second wagon (which will be first) is an engine. If it is one,