(svn r6994) -Regression (r6291): When sending an aircrafts to a hangar the wrong bit gets tested to determine if a aircraft should stop there or just get serviced
authortron
Sat, 28 Oct 2006 14:37:33 +0000
changeset 4991 a9f3eb46f329
parent 4990 000c644b08e2
child 4992 bd2716c79584
(svn r6994) -Regression (r6291): When sending an aircrafts to a hangar the wrong bit gets tested to determine if a aircraft should stop there or just get serviced
Also remove a stale comment
Both spotted and fixed by Mart3p
aircraft_cmd.c
--- a/aircraft_cmd.c	Sat Oct 28 14:06:40 2006 +0000
+++ b/aircraft_cmd.c	Sat Oct 28 14:37:33 2006 +0000
@@ -535,7 +535,6 @@
 		}
 	} else {
 		bool next_airport_has_hangar = true;
-		/* If bit 17 is set, next airport is specified by low word of p2, otherwise it's the target airport */
 		StationID next_airport_index = v->u.air.targetairport;
 		const Station *st = GetStation(next_airport_index);
 		/* If the station is not a valid airport or if it has no hangars */
@@ -556,7 +555,7 @@
 		if (flags & DC_EXEC) {
 			v->current_order.type = OT_GOTO_DEPOT;
 			v->current_order.flags = OF_NON_STOP;
-			if (!(p1 & DEPOT_SERVICE)) SETBIT(v->current_order.flags, OFB_HALT_IN_DEPOT);
+			if (!(p2 & DEPOT_SERVICE)) SETBIT(v->current_order.flags, OFB_HALT_IN_DEPOT);
 			v->current_order.dest = next_airport_index;
 			InvalidateWindowWidget(WC_VEHICLE_VIEW, v->index, STATUS_BAR);
 			if (p2 & DEPOT_LOCATE_HANGAR || (p2 & DEPOT_SERVICE && v->u.air.state == FLYING && !next_airport_has_hangar)) {