(svn r6176) -Fix r6052: I assumed an typedefd enum would be an uint8, which is a really stupid thing to assume.
This caused nasty endian bugs. Thank you SO MUCH Osai for all your time in debugging this!! And tnx Rubidium for spotting :)
--- a/order.h Sun Aug 27 15:21:10 2006 +0000
+++ b/order.h Sun Aug 27 15:26:58 2006 +0000
@@ -15,15 +15,17 @@
};
/* Order types */
-typedef enum OrderTypes {
+enum OrderTypes {
OT_NOTHING = 0,
OT_GOTO_STATION = 1,
OT_GOTO_DEPOT = 2,
OT_LOADING = 3,
OT_LEAVESTATION = 4,
OT_DUMMY = 5,
- OT_GOTO_WAYPOINT = 6
-} OrderType;
+ OT_GOTO_WAYPOINT = 6,
+};
+/* It needs to be 8bits, because we save and load it as such */
+typedef uint8 OrderType;
/* Order flags -- please use OFB instead OF and use HASBIT/SETBIT/CLEARBIT */