From 2ff11017dcba062a11aa5a00b21b6d70b0d33a2d Mon Sep 17 00:00:00 2001 From: Jonathan G Rennison Date: Fri, 16 Sep 2022 20:30:14 +0100 Subject: [PATCH] Fix #432: Fix false positive warning in CheckCaches with very old saves --- src/openttd.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/openttd.cpp b/src/openttd.cpp index d2bbd96bbc..198e157335 100644 --- a/src/openttd.cpp +++ b/src/openttd.cpp @@ -1600,7 +1600,7 @@ void CheckCaches(bool force_check, std::function log, CheckC if (u->IsGroundVehicle() && (HasBit(u->GetGroundVehicleFlags(), GVF_GOINGUP_BIT) || HasBit(u->GetGroundVehicleFlags(), GVF_GOINGDOWN_BIT)) && u->GetGroundVehicleCache()->cached_slope_resistance && HasBit(v->vcache.cached_veh_flags, VCF_GV_ZERO_SLOPE_RESIST)) { CCLOGV("VCF_GV_ZERO_SLOPE_RESIST set incorrectly (1)"); } - if (u->type == VEH_TRAIN && u->breakdown_ctr != 0 && !HasBit(Train::From(v)->flags, VRF_CONSIST_BREAKDOWN)) { + if (u->type == VEH_TRAIN && u->breakdown_ctr != 0 && !HasBit(Train::From(v)->flags, VRF_CONSIST_BREAKDOWN) && (Train::From(u)->IsEngine() || Train::From(u)->IsMultiheaded())) { CCLOGV("VRF_CONSIST_BREAKDOWN incorrectly not set"); } if (u->type == VEH_TRAIN && ((Train::From(u)->track & TRACK_BIT_WORMHOLE && !(Train::From(u)->vehstatus & VS_HIDDEN)) || Train::From(u)->track == TRACK_BIT_DEPOT) && !HasBit(Train::From(v)->flags, VRF_CONSIST_SPEED_REDUCTION)) {