summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/engine.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/engine.cpp b/src/engine.cpp
index e73fdb058..a72de454b 100644
--- a/src/engine.cpp
+++ b/src/engine.cpp
@@ -747,8 +747,14 @@ static void EnableEngineForCompany(EngineID eid, CompanyID company)
static void DisableEngineForCompany(EngineID eid, CompanyID company)
{
Engine *e = Engine::Get(eid);
+ Company *c = Company::Get(company);
ClrBit(e->company_avail, company);
+ if (e->type == VEH_TRAIN) {
+ c->avail_railtypes = GetCompanyRailtypes(c->index);
+ } else if (e->type == VEH_ROAD) {
+ c->avail_roadtypes = GetCompanyRoadTypes(c->index);
+ }
if (company == _local_company) {
AddRemoveEngineFromAutoreplaceAndBuildWindows(e->type);