diff --git a/src/station.cpp b/src/station.cpp --- a/src/station.cpp +++ b/src/station.cpp @@ -11,6 +11,7 @@ #include "stdafx.h" #include "company_func.h" +#include "company_base.h" #include "roadveh.h" #include "functions.h" #include "window_func.h" @@ -81,7 +82,10 @@ Station::~Station() InvalidateWindowData(WC_STATION_LIST, this->owner, 0); DeleteWindowById(WC_STATION_VIEW, index); - WindowNumber wno = (this->index << 16) | VLW_STATION_LIST | this->owner; + + Owner owner = this->owner; + if (!Company::IsValidID(owner)) owner = _local_company; + WindowNumber wno = (this->index << 16) | VLW_STATION_LIST | owner; DeleteWindowById(WC_TRAINS_LIST, wno | (VEH_TRAIN << 11)); DeleteWindowById(WC_ROADVEH_LIST, wno | (VEH_ROAD << 11)); DeleteWindowById(WC_SHIPS_LIST, wno | (VEH_SHIP << 11));