mirror of
https://github.com/OpenTTD/OpenTTD.git
synced 2025-03-06 06:15:04 +00:00
(svn r6694) -Fix: FS#361 Refit-to Order bug (only one of the two bugs mentioned there)
-Now refit orders are copied when copying orders -Fixed an initilation issue where CT_INVALID was used instead of CT_NO_REFIT (resulted in crashes in the order window) -Fixed a compiler warning in the function to load TTD savegames
This commit is contained in:
parent
2c6aad5f2d
commit
73f1ffe84f
2
order.h
2
order.h
@ -191,7 +191,7 @@ static inline Order UnpackOrder(uint32 packed)
|
||||
order.dest = GB(packed, 16, 16);
|
||||
order.next = NULL;
|
||||
order.index = 0; // avoid compiler warning
|
||||
order.refit_cargo = CT_INVALID;
|
||||
order.refit_cargo = CT_NO_REFIT;
|
||||
order.refit_subtype = 0;
|
||||
return order;
|
||||
}
|
||||
|
15
order_cmd.c
15
order_cmd.c
@ -50,6 +50,10 @@ Order UnpackOldOrder(uint16 packed)
|
||||
order.dest = GB(packed, 8, 8);
|
||||
order.next = NULL;
|
||||
|
||||
order.refit_cargo = CT_NO_REFIT;
|
||||
order.refit_subtype = 0;
|
||||
order.index = 0; // avoid compiler warning
|
||||
|
||||
// Sanity check
|
||||
// TTD stores invalid orders as OT_NOTHING with non-zero flags/station
|
||||
if (order.type == OT_NOTHING && (order.flags != 0 || order.dest != 0)) {
|
||||
@ -57,9 +61,6 @@ Order UnpackOldOrder(uint16 packed)
|
||||
order.flags = 0;
|
||||
}
|
||||
|
||||
order.refit_cargo = CT_INVALID;
|
||||
order.refit_subtype = 0;
|
||||
|
||||
return order;
|
||||
}
|
||||
|
||||
@ -76,7 +77,7 @@ static Order UnpackVersion4Order(uint16 packed)
|
||||
order.dest = GB(packed, 8, 8);
|
||||
order.next = NULL;
|
||||
order.index = 0; // avoid compiler warning
|
||||
order.refit_cargo = CT_INVALID;
|
||||
order.refit_cargo = CT_NO_REFIT;
|
||||
order.refit_subtype = 0;
|
||||
return order;
|
||||
}
|
||||
@ -128,6 +129,8 @@ static Order *AllocateOrder(void)
|
||||
memset(order, 0, sizeof(*order));
|
||||
order->index = index;
|
||||
order->next = NULL;
|
||||
order->refit_cargo = CT_NO_REFIT;
|
||||
order->refit_subtype = 0;
|
||||
|
||||
return order;
|
||||
}
|
||||
@ -151,8 +154,8 @@ void AssignOrder(Order *order, Order data)
|
||||
order->flags = data.flags;
|
||||
order->dest = data.dest;
|
||||
|
||||
order->refit_cargo = CT_NO_REFIT;
|
||||
order->refit_subtype = CT_NO_REFIT;
|
||||
order->refit_cargo = data.refit_cargo;
|
||||
order->refit_subtype = data.refit_subtype;
|
||||
}
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user