From 0f78b620fbb4e4ca744ceffffc43a9c0846bca12 Mon Sep 17 00:00:00 2001
From: bjarni <bjarni@openttd.org>
Date: Fri, 22 Sep 2006 23:13:12 +0000
Subject: [PATCH] (svn r6497) -Fix r6165: Vehicles heading for depots when
 their orders contained "service in depot" displayed the stopping in depot
 string    This turned out to be due to OFB_HALT_IN_DEPOT and
 OFB_SERVICE_IF_NEEDED using the same bit    It appears that it doesn't matter
 for the code, so I adapted the string selection code to handle this

---
 aircraft_gui.c | 2 +-
 roadveh_gui.c  | 2 +-
 ship_gui.c     | 2 +-
 train_gui.c    | 2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/aircraft_gui.c b/aircraft_gui.c
index bca31d9715..75a7a332be 100644
--- a/aircraft_gui.c
+++ b/aircraft_gui.c
@@ -557,7 +557,7 @@ static void AircraftViewWndProc(Window *w, WindowEvent *e)
 				/* Aircrafts always go to a station, even if you say depot */
 				SetDParam(0, v->current_order.dest);
 				SetDParam(1, v->cur_speed * 128 / 10);
-				if (HASBIT(v->current_order.flags, OFB_HALT_IN_DEPOT)) {
+				if (HASBIT(v->current_order.flags, OFB_HALT_IN_DEPOT) && !HASBIT(v->current_order.flags, OFB_PART_OF_ORDERS)) {
 					str = STR_HEADING_FOR_HANGAR + _patches.vehicle_speed;
 				} else {
 					str = STR_HEADING_FOR_HANGAR_SERVICE + _patches.vehicle_speed;
diff --git a/roadveh_gui.c b/roadveh_gui.c
index 47df5cdc49..7c85142cf0 100644
--- a/roadveh_gui.c
+++ b/roadveh_gui.c
@@ -343,7 +343,7 @@ static void RoadVehViewWndProc(Window *w, WindowEvent *e)
 				Depot *depot = GetDepot(v->current_order.dest);
 				SetDParam(0, depot->town_index);
 				SetDParam(1, v->cur_speed / 2);
-				if (HASBIT(v->current_order.flags, OFB_HALT_IN_DEPOT)) {
+				if (HASBIT(v->current_order.flags, OFB_HALT_IN_DEPOT) && !HASBIT(v->current_order.flags, OFB_PART_OF_ORDERS)) {
 					str = STR_HEADING_FOR_ROAD_DEPOT + _patches.vehicle_speed;
 				} else {
 					str = STR_HEADING_FOR_ROAD_DEPOT_SERVICE + _patches.vehicle_speed;
diff --git a/ship_gui.c b/ship_gui.c
index 75374c3c7d..9b31190c23 100644
--- a/ship_gui.c
+++ b/ship_gui.c
@@ -484,7 +484,7 @@ static void ShipViewWndProc(Window *w, WindowEvent *e)
 						Depot *depot = GetDepot(v->current_order.dest);
 						SetDParam(0, depot->town_index);
 						SetDParam(1, v->cur_speed / 2);
-						if (HASBIT(v->current_order.flags, OFB_HALT_IN_DEPOT)) {
+						if (HASBIT(v->current_order.flags, OFB_HALT_IN_DEPOT) && !HASBIT(v->current_order.flags, OFB_PART_OF_ORDERS)) {
 							str = STR_HEADING_FOR_SHIP_DEPOT + _patches.vehicle_speed;
 						} else {
 							str = STR_HEADING_FOR_SHIP_DEPOT_SERVICE + _patches.vehicle_speed;
diff --git a/train_gui.c b/train_gui.c
index 3dfc86e841..d1266cbcd7 100644
--- a/train_gui.c
+++ b/train_gui.c
@@ -974,7 +974,7 @@ static void TrainViewWndProc(Window *w, WindowEvent *e)
 			case OT_GOTO_DEPOT: {
 				Depot *dep = GetDepot(v->current_order.dest);
 				SetDParam(0, dep->town_index);
-				if (HASBIT(v->current_order.flags, OFB_HALT_IN_DEPOT)) {
+				if (HASBIT(v->current_order.flags, OFB_HALT_IN_DEPOT) && !HASBIT(v->current_order.flags, OFB_PART_OF_ORDERS)) {
 					str = STR_HEADING_FOR_TRAIN_DEPOT + _patches.vehicle_speed;
 				} else {
 					str = STR_HEADING_FOR_TRAIN_DEPOT_SERVICE + _patches.vehicle_speed;