summaryrefslogtreecommitdiff
path: root/src/order_cmd.cpp
diff options
context:
space:
mode:
authorrubidium <rubidium@openttd.org>2008-05-04 22:57:50 +0000
committerrubidium <rubidium@openttd.org>2008-05-04 22:57:50 +0000
commit62259ff6659f0ca3554b70fb0d65255181c7983f (patch)
treee22940c935638977339bfe694f7025c0864b4afb /src/order_cmd.cpp
parentc878af48413f2783add831ed5f0d5f31b8e47e6f (diff)
downloadopenttd-62259ff6659f0ca3554b70fb0d65255181c7983f.tar.xz
(svn r12949) -Fix [FS#1978]: no loading/no unloading orders were 'forgotten' during manual replaces.
Diffstat (limited to 'src/order_cmd.cpp')
-rw-r--r--src/order_cmd.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/order_cmd.cpp b/src/order_cmd.cpp
index 24c8ade89..4a951065a 100644
--- a/src/order_cmd.cpp
+++ b/src/order_cmd.cpp
@@ -364,10 +364,13 @@ CommandCost CmdInsertOrder(TileIndex tile, uint32 flags, uint32 p1, uint32 p2)
/* Filter invalid load/unload types. */
switch (new_order.GetLoadType()) {
- case OLF_LOAD_IF_POSSIBLE: case OLFB_FULL_LOAD: case OLF_FULL_LOAD_ANY: break;
+ case OLF_LOAD_IF_POSSIBLE: case OLFB_FULL_LOAD: case OLF_FULL_LOAD_ANY: case OLFB_NO_LOAD: break;
+ default: return CMD_ERROR;
+ }
+ switch (new_order.GetUnloadType()) {
+ case OUF_UNLOAD_IF_POSSIBLE: case OUFB_UNLOAD: case OUFB_TRANSFER: case OUFB_NO_UNLOAD: break;
default: return CMD_ERROR;
}
- if (new_order.GetUnloadType() & ~(OUFB_UNLOAD | OUFB_TRANSFER)) return CMD_ERROR;
break;
}