mirror of https://github.com/OpenTTD/OpenTTD.git
(svn r1544) -Fix: SwapOrder did not use AssignOrder, which caused the saveroutine to
crash from time to time -Codechange: added const before 'Order *' where possible
This commit is contained in:
parent
be5a832db3
commit
8e404a26f6
2
ai.c
2
ai.c
|
@ -3609,7 +3609,7 @@ static void AiStateRemoveStation(Player *p)
|
||||||
{
|
{
|
||||||
// Remove stations that aren't in use by any vehicle
|
// Remove stations that aren't in use by any vehicle
|
||||||
byte in_use[256], *used;
|
byte in_use[256], *used;
|
||||||
Order *ord;
|
const Order *ord;
|
||||||
Station *st;
|
Station *st;
|
||||||
uint tile;
|
uint tile;
|
||||||
|
|
||||||
|
|
|
@ -1023,7 +1023,7 @@ static void HandleAircraftSmoke(Vehicle *v)
|
||||||
|
|
||||||
static void ProcessAircraftOrder(Vehicle *v)
|
static void ProcessAircraftOrder(Vehicle *v)
|
||||||
{
|
{
|
||||||
Order *order;
|
const Order *order;
|
||||||
|
|
||||||
// OT_GOTO_DEPOT, OT_LOADING
|
// OT_GOTO_DEPOT, OT_LOADING
|
||||||
if (v->current_order.type == OT_GOTO_DEPOT ||
|
if (v->current_order.type == OT_GOTO_DEPOT ||
|
||||||
|
|
2
order.h
2
order.h
|
@ -74,7 +74,7 @@ static inline Order *GetOrder(uint index)
|
||||||
|
|
||||||
static inline bool HasOrderPoolFree(uint amount)
|
static inline bool HasOrderPoolFree(uint amount)
|
||||||
{
|
{
|
||||||
Order *order;
|
const Order *order;
|
||||||
|
|
||||||
FOR_ALL_ORDERS(order)
|
FOR_ALL_ORDERS(order)
|
||||||
if (order->type == OT_NOTHING)
|
if (order->type == OT_NOTHING)
|
||||||
|
|
|
@ -67,8 +67,10 @@ static void SwapOrders(Order *order1, Order *order2)
|
||||||
Order temp_order;
|
Order temp_order;
|
||||||
|
|
||||||
temp_order = *order1;
|
temp_order = *order1;
|
||||||
*order1 = *order2;
|
AssignOrder(order1, *order2);
|
||||||
*order2 = temp_order;
|
order1->next = order2->next;
|
||||||
|
AssignOrder(order2, temp_order);
|
||||||
|
order2->next = temp_order.next;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -387,7 +387,7 @@ static void OrdersWndProc(Window *w, WindowEvent *e)
|
||||||
sel += w->vscroll.pos;
|
sel += w->vscroll.pos;
|
||||||
|
|
||||||
if (_ctrl_pressed && sel < v->num_orders) {
|
if (_ctrl_pressed && sel < v->num_orders) {
|
||||||
Order *ord = GetVehicleOrder(v, sel);
|
const Order *ord = GetVehicleOrder(v, sel);
|
||||||
int xy = 0;
|
int xy = 0;
|
||||||
switch (ord->type) {
|
switch (ord->type) {
|
||||||
case OT_GOTO_STATION: /* station order */
|
case OT_GOTO_STATION: /* station order */
|
||||||
|
|
Loading…
Reference in New Issue