(svn r10335) -Fix (r10331): Increment the current order index *after* using it in UpdateVehicleTimetable.
authormaedhros
Mon, 25 Jun 2007 23:14:13 +0000
changeset 7070 2f4e1b2facc6
parent 7069 c5e067d3e3cc
child 7071 625657fed875
(svn r10335) -Fix (r10331): Increment the current order index *after* using it in UpdateVehicleTimetable.
src/aircraft_cmd.cpp
src/roadveh_cmd.cpp
src/ship_cmd.cpp
src/train_cmd.cpp
src/vehicle.cpp
--- a/src/aircraft_cmd.cpp	Mon Jun 25 21:50:36 2007 +0000
+++ b/src/aircraft_cmd.cpp	Mon Jun 25 23:14:13 2007 +0000
@@ -1344,8 +1344,8 @@
 			if (!(v->current_order.flags & OF_PART_OF_ORDERS)) return;
 			if (v->current_order.flags & OF_SERVICE_IF_NEEDED &&
 					!VehicleNeedsService(v)) {
+				UpdateVehicleTimetable(v, true);
 				v->cur_order_index++;
-				UpdateVehicleTimetable(v, true);
 			}
 			break;
 
--- a/src/roadveh_cmd.cpp	Mon Jun 25 21:50:36 2007 +0000
+++ b/src/roadveh_cmd.cpp	Mon Jun 25 23:14:13 2007 +0000
@@ -758,8 +758,8 @@
 			if (!(v->current_order.flags & OF_PART_OF_ORDERS)) return;
 			if (v->current_order.flags & OF_SERVICE_IF_NEEDED &&
 					!VehicleNeedsService(v)) {
+				UpdateVehicleTimetable(v, true);
 				v->cur_order_index++;
-				UpdateVehicleTimetable(v, true);
 			}
 			break;
 
--- a/src/ship_cmd.cpp	Mon Jun 25 21:50:36 2007 +0000
+++ b/src/ship_cmd.cpp	Mon Jun 25 23:14:13 2007 +0000
@@ -258,8 +258,8 @@
 			if (!(v->current_order.flags & OF_PART_OF_ORDERS)) return;
 			if (v->current_order.flags & OF_SERVICE_IF_NEEDED &&
 					!VehicleNeedsService(v)) {
+				UpdateVehicleTimetable(v, true);
 				v->cur_order_index++;
-				UpdateVehicleTimetable(v, true);
 			}
 			break;
 
@@ -696,9 +696,9 @@
 						DistanceManhattan(v->dest_tile, gp.new_tile) <= 3) {
 					/* We got within 3 tiles of our target buoy, so let's skip to our
 					 * next order */
+					UpdateVehicleTimetable(v, true);
 					v->cur_order_index++;
 					v->current_order.type = OT_DUMMY;
-					UpdateVehicleTimetable(v, true);
 					InvalidateVehicleOrder(v);
 				} else {
 					/* Non-buoy orders really need to reach the tile */
--- a/src/train_cmd.cpp	Mon Jun 25 21:50:36 2007 +0000
+++ b/src/train_cmd.cpp	Mon Jun 25 23:14:13 2007 +0000
@@ -2380,8 +2380,8 @@
 			if (!(v->current_order.flags & OF_PART_OF_ORDERS)) return false;
 			if ((v->current_order.flags & OF_SERVICE_IF_NEEDED) &&
 					!VehicleNeedsService(v)) {
+				UpdateVehicleTimetable(v, true);
 				v->cur_order_index++;
-				UpdateVehicleTimetable(v, true);
 			}
 			break;
 
@@ -2395,9 +2395,9 @@
 	/* check if we've reached the waypoint? */
 	bool at_waypoint = false;
 	if (v->current_order.type == OT_GOTO_WAYPOINT && v->tile == v->dest_tile) {
+		UpdateVehicleTimetable(v, true);
 		v->cur_order_index++;
 		at_waypoint = true;
-		UpdateVehicleTimetable(v, true);
 	}
 
 	/* check if we've reached a non-stop station while TTDPatch nonstop is enabled.. */
@@ -2405,8 +2405,8 @@
 			v->current_order.flags & OF_NON_STOP &&
 			IsTileType(v->tile, MP_STATION) &&
 			v->current_order.dest == GetStationIndex(v->tile)) {
+		UpdateVehicleTimetable(v, true);
 		v->cur_order_index++;
-		UpdateVehicleTimetable(v, true);
 	}
 
 	/* Get the current order */
--- a/src/vehicle.cpp	Mon Jun 25 21:50:36 2007 +0000
+++ b/src/vehicle.cpp	Mon Jun 25 23:14:13 2007 +0000
@@ -2368,8 +2368,8 @@
 
 		if (HASBIT(t.flags, OFB_PART_OF_ORDERS)) {
 			/* Part of orders */
+			UpdateVehicleTimetable(v, true);
 			v->cur_order_index++;
-			UpdateVehicleTimetable(v, true);
 		} else if (HASBIT(t.flags, OFB_HALT_IN_DEPOT)) {
 			/* Force depot visit */
 			v->vehstatus |= VS_STOPPED;