From 4a255e879aa60ac21a12097f1896f0a6dd110770 Mon Sep 17 00:00:00 2001 From: Alberth Date: Sat, 29 Dec 2018 13:31:31 +0100 Subject: [PATCH] Fix #6966: Only allow switching to a valid company. --- src/script/api/script_companymode.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/script/api/script_companymode.cpp b/src/script/api/script_companymode.cpp index 1931a5db78..a5d3963a2d 100644 --- a/src/script/api/script_companymode.cpp +++ b/src/script/api/script_companymode.cpp @@ -10,6 +10,7 @@ /** @file script_companymode.cpp Implementation of ScriptCompanyMode. */ #include "../../stdafx.h" +#include "../../company_base.h" #include "script_companymode.hpp" #include "../../safeguards.h" @@ -17,6 +18,7 @@ ScriptCompanyMode::ScriptCompanyMode(int company) { if (company < OWNER_BEGIN || company >= MAX_COMPANIES) company = INVALID_COMPANY; + if (!::Company::IsValidID(company)) company = INVALID_COMPANY; this->last_company = ScriptObject::GetCompany(); ScriptObject::SetCompany((CompanyID)company);