diff -r 238ec04a86d4 -r ec46969766e3 src/autoreplace_cmd.cpp --- a/src/autoreplace_cmd.cpp Tue May 29 19:01:38 2007 +0000 +++ b/src/autoreplace_cmd.cpp Tue May 29 20:06:06 2007 +0000 @@ -171,7 +171,12 @@ return cost; } - if (replacement_cargo_type != CT_NO_REFIT) cost += GetRefitCost(new_engine_type); // add refit cost + if (replacement_cargo_type != CT_NO_REFIT) { + /* add refit cost */ + int32 refit_cost = GetRefitCost(new_engine_type); + if (old_v->type == VEH_TRAIN && IsMultiheaded(old_v)) refit_cost += refit_cost; // pay for both ends + cost += refit_cost; + } if (flags & DC_EXEC) { new_v = GetVehicle(_new_vehicle_id);