(svn r3208) Don't explicitly pass the engine type to look for to GetRearEngine(), because it's the engine type of the vehicle which gets passed as first parameter
authortron
Wed, 16 Nov 2005 14:07:34 +0000
changeset 2666 ae363cb59955
parent 2665 6be437294af0
child 2667 f3ffefc784c5
(svn r3208) Don't explicitly pass the engine type to look for to GetRearEngine(), because it's the engine type of the vehicle which gets passed as first parameter
train_cmd.c
vehicle.c
vehicle.h
--- a/train_cmd.c	Wed Nov 16 13:45:42 2005 +0000
+++ b/train_cmd.c	Wed Nov 16 14:07:34 2005 +0000
@@ -1080,13 +1080,13 @@
  * engine is 'started', first 'close' that before 'closing' our
  * searched engine
  */
-Vehicle *GetRearEngine(const Vehicle *v, EngineID engine)
+Vehicle* GetRearEngine(const Vehicle* v)
 {
 	Vehicle *u;
 	int en_count = 1;
 
 	for (u = v->next; u != NULL; u = u->next) {
-		if (u->engine_type == engine) { // find matching engine
+		if (u->engine_type == v->engine_type) { // find matching engine
 			en_count += (IS_FIRSTHEAD_SPRITE(u->spritenum)) ? +1 : -1;
 
 			if (en_count == 0) return (Vehicle *)u;
@@ -1142,7 +1142,7 @@
 
 			/* 1. Delete the engine, if it is dualheaded also delete the matching
 			* rear engine of the loco (from the point of deletion onwards) */
-			Vehicle *rear = (RailVehInfo(v->engine_type)->flags & RVI_MULTIHEAD) ? GetRearEngine(v, v->engine_type) : NULL;
+			Vehicle* rear = (RailVehInfo(v->engine_type)->flags & RVI_MULTIHEAD) ? GetRearEngine(v) : NULL;
 			if (rear != NULL) {
 				cost -= v->value;
 				if (flags & DC_EXEC) {
--- a/vehicle.c	Wed Nov 16 13:45:42 2005 +0000
+++ b/vehicle.c	Wed Nov 16 14:07:34 2005 +0000
@@ -1491,7 +1491,7 @@
 	switch (v->type) {
 		case VEH_Train:
 			if (RailVehInfo(v->engine_type)->flags & RVI_MULTIHEAD) {
-				return GetRearEngine(v, v->engine_type);
+				return GetRearEngine(v);
 			}
 			if (v->next != NULL && v->next->subtype == TS_Artic_Part) return v->next;
 			break;
--- a/vehicle.h	Wed Nov 16 13:45:42 2005 +0000
+++ b/vehicle.h	Wed Nov 16 14:07:34 2005 +0000
@@ -311,7 +311,7 @@
 void CheckVehicleBreakdown(Vehicle *v);
 void AgeVehicle(Vehicle *v);
 void VehicleEnteredDepotThisTick(Vehicle *v);
-Vehicle *GetRearEngine(const Vehicle *v, EngineID engine);
+Vehicle* GetRearEngine(const Vehicle* v);
 
 void BeginVehicleMove(Vehicle *v);
 void EndVehicleMove(Vehicle *v);