From 48dc4219eac623a2db6151f6d00ce9f91e23c871 Mon Sep 17 00:00:00 2001 From: PeterN Date: Wed, 20 Sep 2023 08:56:53 +0100 Subject: [PATCH] Codechange: Don't pass GUI cargo filter constants to command system. (#11320) CMD_BUILD_VEHICLE expects CT_INVALID to indicate a new vehicle should not be refitted on build, but the code passed CF_NONE instead. CF_NONE has the same numeric value at CT_INVALID, so the test passed, but... --- src/build_vehicle_gui.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/build_vehicle_gui.cpp b/src/build_vehicle_gui.cpp index 707715a28e..6c5e5223e3 100644 --- a/src/build_vehicle_gui.cpp +++ b/src/build_vehicle_gui.cpp @@ -1323,7 +1323,7 @@ struct BuildVehicleWindow : Window { void SelectEngine(EngineID engine) { CargoID cargo = this->cargo_filter[this->cargo_filter_criteria]; - if (cargo == CF_ANY) cargo = CF_NONE; + if (cargo == CF_ANY || cargo == CF_ENGINES || cargo == CF_NONE) cargo = CT_INVALID; this->sel_engine = engine; this->SetBuyVehicleText(); @@ -1647,7 +1647,7 @@ struct BuildVehicleWindow : Window { EngineID sel_eng = this->sel_engine; if (sel_eng != INVALID_ENGINE) { CargoID cargo = this->cargo_filter[this->cargo_filter_criteria]; - if (cargo == CF_ANY || cargo == CF_ENGINES) cargo = CF_NONE; + if (cargo == CF_ANY || cargo == CF_ENGINES || cargo == CF_NONE) cargo = CT_INVALID; if (this->vehicle_type == VEH_TRAIN && RailVehInfo(sel_eng)->railveh_type == RAILVEH_WAGON) { Command::Post(GetCmdBuildVehMsg(this->vehicle_type), CcBuildWagon, this->window_number, sel_eng, true, cargo, INVALID_CLIENT_ID); } else {