diff -r b71483f2330f -r 3301b1b3889c src/economy.cpp --- a/src/economy.cpp Fri May 25 00:25:08 2007 +0000 +++ b/src/economy.cpp Fri Jun 01 20:54:09 2007 +0000 @@ -117,10 +117,7 @@ FOR_ALL_VEHICLES(v) { if (v->owner != owner) continue; - if ((v->type == VEH_TRAIN && IsFrontEngine(v)) || - v->type == VEH_ROAD || - (v->type == VEH_AIRCRAFT && IsNormalAircraft(v)) || - v->type == VEH_SHIP) { + if (IsPlayerBuildableVehicleType(v->type) && v->IsPrimaryVehicle()) { num++; if (v->age > 730) { /* Find the vehicle with the lowest amount of profit */ @@ -1581,7 +1578,7 @@ /* Skip loading this vehicle if another train/vehicle is already handling * the same cargo type at this station */ - if (_patches.improved_load && cargo_left[v->cargo_type] < 0) { + if (_patches.improved_load && cargo_left[v->cargo_type] <= 0) { SETBIT(cargo_not_full, v->cargo_type); continue; }