From bea18ffc1897e456bffd420fbcf67e84a6654b25 Mon Sep 17 00:00:00 2001 From: Jonathan G Rennison Date: Sat, 18 Nov 2023 12:23:10 +0000 Subject: [PATCH] Fix cargodist after loading ChillPP savegames --- src/sl/cargopacket_sl.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/sl/cargopacket_sl.cpp b/src/sl/cargopacket_sl.cpp index 846578594a..f3713beea0 100644 --- a/src/sl/cargopacket_sl.cpp +++ b/src/sl/cargopacket_sl.cpp @@ -137,6 +137,13 @@ extern btree::btree_map _cargo_packet_deferred_payments; for (CargoPacket *cp : iter.second) { st->goods[v->cargo_type].CreateData().cargo.AfterLoadIncreaseReservationCount(cp->count); v->cargo.Append(cp, VehicleCargoList::MTA_LOAD); + if (cp->source_xy != INVALID_TILE) { + cp->UpdateLoadingTile(cp->source_xy); + } +#ifdef WITH_FULL_ASSERTS + /* CPF_IN_VEHICLE in flags is a NOSAVE; it tells if cargo is in a vehicle or not. Restore the value in here. */ + cp->flags |= CPF_IN_VEHICLE; +#endif /* WITH_FULL_ASSERTS */ } } _veh_cpp_packets.clear();