Changeset - r10573:2a7f1f002c6b
[Not reviewed]
master
0 2 0
rubidium - 15 years ago 2009-01-04 15:53:43
rubidium@openttd.org
(svn r14830) -Fix [FS#2495]: overflow of number of orders per vehicle (based on patch by Swallow)
2 files changed with 6 insertions and 3 deletions:
0 comments (0 inline, 0 general)
src/order_cmd.cpp
Show inline comments
 
@@ -567,6 +567,7 @@ CommandCost CmdInsertOrder(TileIndex til
 

	
 
	if (sel_ord > v->GetNumOrders()) return CMD_ERROR;
 

	
 
	if (v->GetNumOrders() >= MAX_VEH_ORDER_ID) return_cmd_error(STR_8832_TOO_MANY_ORDERS);
 
	if (!Order::CanAllocateItem()) return_cmd_error(STR_8831_NO_MORE_SPACE_FOR_ORDERS);
 
	if (v->orders.list == NULL && !OrderList::CanAllocateItem()) return_cmd_error(STR_8831_NO_MORE_SPACE_FOR_ORDERS);
 

	
src/order_type.h
Show inline comments
 
@@ -12,10 +12,12 @@ typedef uint16 OrderID;
 
typedef uint16 OrderListID;
 
typedef uint16 DestinationID;
 

	
 
enum {
 
	INVALID_VEH_ORDER_ID = 0xFF,
 
};
 
/** Invalid vehicle order index (sentinel) */
 
static const VehicleOrderID INVALID_VEH_ORDER_ID = 0xFF;
 
/** Last valid VehicleOrderID. */
 
static const VehicleOrderID MAX_VEH_ORDER_ID     = INVALID_VEH_ORDER_ID - 1;
 

	
 
/** Invalid order (sentinel) */
 
static const OrderID INVALID_ORDER = 0xFFFF;
 

	
 
/* Order types */
0 comments (0 inline, 0 general)