diff options
author | smatz <smatz@openttd.org> | 2008-09-24 16:40:06 +0000 |
---|---|---|
committer | smatz <smatz@openttd.org> | 2008-09-24 16:40:06 +0000 |
commit | a000de84187c2b2eff9fae2cf89163bf073a498d (patch) | |
tree | 4bdc7914fbb86480437af0957e290777e16788c6 /src/vehicle_base.h | |
parent | 8b84fea7e1279ea98ef6e9ea2fba0a4d4fb9a501 (diff) | |
download | openttd-a000de84187c2b2eff9fae2cf89163bf073a498d.tar.xz |
(svn r14395) -Fix [FS#2285]: crashes and GUI desyncs when order is deleted/modified while the timetable window is open
-Fix: close any dropdown and child windows in the Order and Timetable windows when selected order is deselected, deleted, ...
Diffstat (limited to 'src/vehicle_base.h')
-rw-r--r-- | src/vehicle_base.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/vehicle_base.h b/src/vehicle_base.h index d0bc4188c..4ad13c306 100644 --- a/src/vehicle_base.h +++ b/src/vehicle_base.h @@ -657,6 +657,19 @@ static inline Order *GetVehicleOrder(const Vehicle *v, int index) return order; } + +/** Returns VehicleOrderID of selected order */ +static inline VehicleOrderID GetVehicleOrderID(const Vehicle *v, OrderID order) +{ + VehicleOrderID ret = 0; + + for (const Order *o = v->orders; o != NULL; o = o->next, ret++) { + if (o->index == order) return ret; + } + + return INVALID_VEH_ORDER_ID; +} + /** * Returns the last order of a vehicle, or NULL if it doesn't exists * @param v Vehicle to query |