summaryrefslogtreecommitdiff
path: root/src/waypoint.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/waypoint.cpp')
-rw-r--r--src/waypoint.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/waypoint.cpp b/src/waypoint.cpp
index a22edcb48..6ed11799b 100644
--- a/src/waypoint.cpp
+++ b/src/waypoint.cpp
@@ -17,6 +17,7 @@
#include "waypoint_base.h"
#include "vehicle_gui.h"
#include "company_func.h"
+#include "company_base.h"
/**
* Draw a waypoint
@@ -55,7 +56,9 @@ Waypoint::~Waypoint()
DeleteWindowById(WC_WAYPOINT_VIEW, this->index);
RemoveOrderFromAllVehicles(OT_GOTO_WAYPOINT, this->index);
- WindowNumber wno = (this->index << 16) | VLW_WAYPOINT_LIST | (this->owner == OWNER_NONE ? _local_company : this->owner);
+ Owner owner = this->owner;
+ if (!Company::IsValidID(owner)) owner = _local_company;
+ WindowNumber wno = (this->index << 16) | VLW_WAYPOINT_LIST | owner;
DeleteWindowById(WC_TRAINS_LIST, wno | (VEH_TRAIN << 11));
DeleteWindowById(WC_SHIPS_LIST, wno | (VEH_SHIP << 11));